【发布时间】:2023-03-30 06:27:02
【问题描述】:
我正在尝试调用网络服务几个小时。 我添加了clientaccesspolicy.xml:
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
和crossdomain.xml:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-http-request-headers-from domain="*" headers="SOAPAction,Content-Type"/>
</cross-domain-policy>
到我网站的根目录。 Web 服务是从 IIS 调用的,它在这里工作。
但是当我尝试从 silverlight 应用程序调用我的 wcf Web 服务时,我收到了这个错误:
远程服务器返回错误:NotFound。
这是来自 Fiddler 的日志:
a:InternalServiceFault由于服务器无法处理请求 内部错误。有关错误的更多信息,请转 在 IncludeExceptionDetailInFaults 上(来自 ServiceBehaviorAttribute 或来自
配置行为)在服务器上以发送异常 信息返回给客户端,或根据 Microsoft .NET Framework 3.0 SDK 文档并检查服务器 跟踪日志。
这是代码,当我收到错误时:
public int EndUserExist(System.IAsyncResult result) {
object[] _args = new object[0];
int _result = ((int)(base.EndInvoke("UserExist", _args, result))); //Here
return _result;
}
我做错了什么?
【问题讨论】:
-
验证您的端点配置是否正确。如果你使用 Visual Studio 基于 wsdl 构建的代理类,你还可以检查它是否定义正确(尤其是它是否包含带有适当参数的 UserExist 方法。
标签: c# wcf silverlight