Silverlight“添加服务引用”到ASP服务错误

时间:2010-10-10 04:32:33

标签: asp.net silverlight wcf rest

我不确定是什么导致了这个错误。

服务标记:

<%@ ServiceHost 
    Language="C#" 
    Debug="true" 
    Service="WebRole1.ExpenseService" 
    CodeBehind="ExpenseService.svc.cs"
    Factory="System.ServiceModel.Activation.WebServiceHostFactory"
%>

背后的服务代码:

[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class ExpenseService
{
    [OperationContract]
    [WebGet(UriTemplate="expenses", ResponseFormat=WebMessageFormat.Xml)]
    public List<ExpenseInfo> GetExpenses()
    {
        List<ExpenseInfo> result = new List<ExpenseInfo>();
        // ...

        return result;
    }
}

如果我运行项目并导航到浏览器上的服务,则数据显示正常。

如果我尝试添加服务http://localhost:88/ExpenseService.svc/expenses,我会收到错误:

  

网址上的文件   http://localhost:88/ExpenseService.svc/expenses   未被认定为已知文件   类型。

     

来自每种已知类型的错误消息   可以帮助您解决问题:

     
      
  • 来自'XML Schema'的报告是'W3C XML Schema的根元素   应该和它的命名空间   应该   'http://www.w3.org/2001/XMLSchema'。“。

  •   
  • 来自“DISCO文档”的报告是“URL上的发现文档”   http://localhost:88/ExpenseService.svc/expenses   无法找到。'。

  •   
  • 无法识别文档格式。

  •   
  • 来自'WSDL Document'的报告是'XML文档中存在错误(1,   2)。'

         
        
    •   没想到。
    •   
  •   
     

元数据包含一个引用   无法解决:   的 'http://本地主机:88 / ExpenseService.svc /支出'。

     

远程服务器返回了一个   意外回应:(405)方法不是   允许的。

     

远程服务器返回错误:   (405)方法不允许。

     

如果服务是在。中定义的   目前的解决方案,尝试建立   解决方案并添加服务   再次参考。

如果我尝试向http://localhost:88/ExpenseService.svc添加服务引用,则会收到错误:

  

下载'http:// localhost:88 / ExpenseService.svc'时出错。   请求失败,HTTP状态为404:未找到。   元数据包含无法解析的引用:   的 'http://本地主机:88 / ExpenseService.svc'。   在http://localhost:88/ExpenseService.svc没有可以接受该消息的端点监听。这通常是由错误的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在)。   远程服务器返回错误:(404)Not Found。   如果在当前解决方案中定义了服务,请尝试构建解决方案并再次添加服务引用。

我做错了什么?

更新:此页面可能有用:http://code.msdn.microsoft.com/wcfazure/Wiki/View.aspx?title=KnownIssues

更新2 :我尝试了该网站上的建议,没有运气。

1 个答案:

答案 0 :(得分:0)

我最初在启用AJAX时创建了引用。我删除它并制作了一个典型的WCF,它似乎正在工作。 (虽然我仍然遇到SecurityException个问题,详见我的另一个问题。)