WCF测试客户端:添加服务失败.服务元数据可能无法访问.确保您的服务正在运行并公开元数据

本文关键字:服务 元数据 确保 运行 访问 客户端 测试 添加 失败 WCF | 更新日期: 2023-09-27 18:12:25

我目前正在尝试获得同步框架示例工作:sample

解决方案编译没有任何错误或警告。

但是当我按F5时,WCF测试客户端启动并抛出以下错误:

当地

' Temp '测试客户端项目' 10.0 ' 5 b6aab8a - 6629 4 - a12 - 87 c2 e9e75ba9c1e4 ' Client.cs(379年,13):找不到类型或命名空间名称"架构"(您是否缺少using指令或汇编引用?)

下面是Client.cs的代码,上面的错误引用了

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Synchronization")]
public partial class SyncIdFormatGroup
{
    private schema schemaField;
    private System.Xml.XmlElement anyField;
    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2001/XMLSchema", Order=0)]
    public schema schema
    {
        get { return this.schemaField; }
        set { this.schemaField = value; }
    }
    /// <remarks/>
    [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)]
    public System.Xml.XmlElement Any
    {
        get { return this.anyField; }
        set { this.anyField = value; }
    }
}
如果有人能帮我解决这个问题就太好了。

WCF测试客户端:添加服务失败.服务元数据可能无法访问.确保您的服务正在运行并公开元数据

找到解决方案好吧,花了很多时间后我破解了它。出于某种原因,如果我将示例作为控制台应用程序运行,它就会运行良好。但是当我使用WCFTestClient时,我得到了错误。如果我从合同中删除[ServiceKnownType(typeof(SyncIdFormatGroup))],它在WCFTestClient中工作。

您是否在服务中启用了mex(元数据交换)端点?

<endpoint 
      address="mex" 
      binding="mexHttpBinding" 
      contract="IMetadataExchange"/>

阅读页面末尾的注释:注意:如果使用Visual Studio 2010编译这些示例,首先需要删除对同步框架程序集的引用,然后将程序集引用重新添加到项目中。否则,您将看到"无法找到类型或命名空间名称"编译错误。http://code.msdn.microsoft.com/Database-Sync-SQL-Server-7e88adab#content或http://code.msdn.microsoft.com/Database-SyncSQL-Server-e97d1208