- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在维护和开发一个网站,该网站以 ajax 方式使用大量网络服务。
服务的注册是在 aspx 中完成的,如下所示:
<asp:ScriptManagerProxy id="ScriptManager1" runat="server">
<services>
<asp:ServiceReference Path="WebServices/WSAdministrator.asmx"></asp:ServiceReference>
</services>
</asp:ScriptManagerProxy>
使用 javascript 中的服务是这样完成的
WSAdministrator.GetConsumerClubInfo(ConsumerClubId,
OnSucceededToGetConsumerClubInfo,
OnFailedToGetConsumerClubInfo);
我想知道是否可以轻松引用自托管 WCF 服务(在同一台计算机上)。
有什么建议吗?
编辑:WCF 服务在 Windows 服务上运行,它公开 webHttpBinding 和 basicHttpBinding 端点。
读完后ASP.Net WCF Service with no App_Code ,我意识到我应该创建一个 svc 文件来充当对服务的引用。
我创建了这个 svc 文件:
<%@ ServiceHost Language="C#" Service="MyService.Namespace.Contract" %>
并在 web.config 文件中添加了这些行:
<services>
<service name="MyService.Namespace.Contract">
<endpoint address="setAddress" binding="basicHttpBinding" contract="MyService.Namespace.ContractInterface"/>
</service>
</services>
该地址正常工作,但是当我尝试从 svc 访问引用时,出现以下错误:
The type '', provided as the Service attribute value in the ServiceHost directive could not be found.
我在这里缺少什么?
注意:有一些很好的答案,但对于我已经知道的事情,我的问题是如何使用 asp.net 引用我的自托管 WCF 服务,以便我可以从javascript,仅此而已,对此我仍然没有答案......
我看到一些类似问题的回复,告诉应该有一个 IIS 托管服务充当实际服务的“管道”,然后 ScriptManager 应该引用它,也许这是唯一的答案。 ..
最佳答案
当您自行托管 WCF 服务时,您不使用 .SVC 文件,而是按以下方式在 Windows 服务的 OnStart 方法中创建服务主机。
WebServiceHost myServiceHost = null;
if (myServiceHost != null)
{
myServiceHost.Close();
}
myServiceHost = new WebServiceHost(typeof(YourClassName));
myServiceHost.Open();
如果您希望托管服务以支持 WebHttpBinding,则托管类应为 WebServiceHost,如果您希望托管 wsHttpBinding 或任何其他服务,则应使用 ServiceHost。
一旦服务开始运行,客户端就可以连接到它。
以下link包含执行此操作的分步过程。
如果您必须支持能够使用 AJAX 和 Jquery 进行通信的 RESTful 服务,那么您应该使用 WebServiceHost,并且您将按以下方式装饰您的操作契约。
[ServiceContract()]
public interface IMyInterface
{
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "GetArray",
BodyStyle = WebMessageBodyStyle.Bare)]
MyArray[] GetArray();
}
您甚至可以在下面的 question 中找到一些相关信息。 .
关于asp.net - ServiceReference 一个自托管的 WCF 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7252986/
我使用下面的代码来获取所有引用类以激活它: String filter = "(component.factory=com.requestclasses.mypack)"; bundleContext
是否可以在异步回发期间向 Page 上的 ScriptManager 添加一个新的 ServiceReference 实例以便随后我可以通过客户端脚本使用引用的 Web 服务? 我正在尝试在位于 Re
我在 VS 2010 中有一个 Silverlight 5 项目,希望根据我的配置更改其配置文件,就像更改 Web 应用程序的数据库连接字符串一样。 我的 ServiceReferences.Clie
在构建应用程序时,它通常会部署在不同的环境(测试、开发、生产)中,因此端点地址会发生变化。由于 ServiceReferences.ClientConfig 是作为 Silverlight 的 .xa
我的 Visual Studio 解决方案中有两个项目:一个是 WcfService Application 项目,另一个是普通的 C# Silverlight 项目,带有 ServiceRefere
您是否在业务应用程序中使用自动生成的 WCF 服务引用?或者你自己滚?为什么? 编辑 对于任何想自己动手的人,我发现这篇文章可能很有用:Understanding WCF Services in Si
我刚刚开始使用 OSGi 编程,并且遇到了两种监听服务被激活的方法。 第一种方式,来自 EclipseRCP 书籍,使用 ServiceReference: String filter="(objec
我目前正在维护和开发一个网站,该网站以 ajax 方式使用大量网络服务。 服务的注册是在 aspx 中完成的,如下所示: 使用
我正在使用 Eclipse 3.7 和 Eclipse Gemini JPA/DBAccess。我实现了一个引用 EntityManagerBuilderFactory 的声明性 ServiceCom
我在我的 Silverlight 应用程序中使用 wcf 服务。 wcf 服务的位置在 ServiceReferences.ClientConfig 文件中说明,必须更改为安装应用程序的位置。 但是,
我目前正在使用“标准 OSGi”中的 OSGi 和 Vaadin 移植一个非常好的模块化 Web 界面演示,以使用 Spring DM。 列出了一个 OSGi 配置文件: 我意识到在 Spring
使用 MVC4 和 VS2012,我使用的是 Service Reference,它会自动生成一个 Reference.cs 文件。当我构建时,我收到了数十条错误警告 'Missing XML com
我正在从事一个项目,我必须在 SOAP 网络服务表单中调用 API 并获得响应。当响应返回时,我必须从 header 中提取一个 Set-Cookie 值,并将 header Cookie 值与后续
我一直在研究演示示例,其中 JPA 将与 OSGi 一起使用。 问题是,我可以在捆绑后启动/停止服务,但是我无法获得 serviceReference。由于这个原因,我的 JPA 实现没有被执行。 代
我是一名优秀的程序员,十分优秀!