【发布时间】:2011-02-14 06:29:29
【问题描述】:
在我们的项目中,我们直接从 asp.net 网页调用 .svc 文件,我收到错误“远程服务器返回错误:(400) 错误请求。
我们的项目架构是,我们在 Web 应用程序中使用 .svc 文件,在另一个类库项目中使用 svc 编写器的 .cs 文件。从 aspx 中,我们直接调用 WCF 服务而不添加引用或任何东西。我不能改变这个概念,因为它是我们的标准。我可以添加服务引用并调用这些方法,但我想直接从 .svc url 调用该方法。
我生气了 2 天,无法解决错误。我们正在使用 HttpWebRequest 从服务中获取响应。基本上,该服务将数据传输对象(DTO)作为输入,并返回相同的(DTO)作为输出,只有一个值。
检查以下代码:
HttpStatusCode statusCode = HttpHelper.PostXmlRequestValue(requestXMLInput,
string.Format("http://{0}/{1}/MySample.svc/webhttp/MyMethodName",
Request.ServerVariable["HTTP_HOST"], Request.ApplicationPath);
相同的代码在一台机器上工作,但在另一台机器上不行。我检查了配置,一切都一样,但我仍然收到同样的错误。
当我在我的机器中使用 .svc url 时,它可以工作,但会显示一条消息“方法不允许”。当我在工作机器中检查相同的 url 时,我得到了相同的消息。我相信我错过了一些简单的事情。我找不到,因为我是 WCF 的新手。
【问题讨论】:
-
如果您发布代码、XML 或数据示例,请在文本编辑器中突出显示这些行,然后单击编辑器工具栏上的“代码示例”按钮 ({})很好地格式化和语法高亮它!
标签: wcf