C# 从Windows窗体和jQuery调用web服务
我有一个现有的web WCF web服务,Windows窗体可以通过代理调用该服务 我还希望能够从jQuery调用此服务 以下是我的文章: 但是,我被卡住了,因为文章说要在服务的web.config中添加以下代码:C# 从Windows窗体和jQuery调用web服务,c#,jquery,winforms,wcf,web-services,C#,Jquery,Winforms,Wcf,Web Services,我有一个现有的web WCF web服务,Windows窗体可以通过代理调用该服务 我还希望能够从jQuery调用此服务 以下是我的文章: 但是,我被卡住了,因为文章说要在服务的web.config中添加以下代码: <services> <service behaviorConfiguration="ProductServiceBehavior" name="ProductServiceHost.ProductService"> <
<services>
<service
behaviorConfiguration="ProductServiceBehavior"
name="ProductServiceHost.ProductService">
<endpoint
address=""
binding="basicHttpBinding"
contract="ProductServiceHost.IProductService" />
</service>
</services>
但是,我的Windows窗体应用程序现在在调用该服务时出现以下错误:
<services>
<service
behaviorConfiguration="ProductServiceBehavior"
name="ProductServiceHost.ProductService">
<endpoint
address=""
binding="basicHttpBinding"
contract="ProductServiceHost.IProductService" />
</service>
</services>
服务器没有提供有意义的回复;这可能是由于契约不匹配、会话过早关闭或内部服务器错误造成的
这个错误大概是因为我在配置文件中有两个同名的服务。如果我给新服务一个新名称,我是否必须创建一个新方法
我尝试使用相同的方法,但这似乎是不可能的。我认为您可以保留当前的配置。本文中所做的更改是对一个非常基本的配置进行的,目的是明确现有服务的配置(通过说明绑定、契约和行为)。您的配置已明确说明服务
您应该做的是添加一个新的配置供jquery使用,如本文所述:添加一个新的行为并添加一个新的端点。我仍然可以对这两种方法使用相同的方法吗?文章说添加一个装饰供jQuery使用(我的服务接受一个参数)。您需要一个具有多个端点的服务(您已经拥有该名称=
MyApp.EndPoint.Services.TrainingService
)。您的服务有两个端点(一个端点具有address=”“
,另一个端点具有address=“mex”
)。对于jquery,我们必须添加一个具有address=“Web”
的新端点。您链接的文章中描述了该端点的详细信息。对你的情况我会怎么做?从有效的配置开始(测试表单),添加新端点和所描述的行为(测试表单)尝试在jquery中使用新端点。谢谢vererik-这让我走了一段路。
<service
behaviorConfiguration="MyApp.EndPoint.Services.TrainingServiceBehavior"
name="MyApp.EndPoint.Services.TrainingService">
<endpoint
address=""
binding="basicHttpBinding"
contract="MyApp.EndPoint.Services.Interface.ITrainingService" />
</service>
[WebInvoke(Method = "POST",
BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json)]