如何从PropertyInfo确定WCF命名空间?

时间:2011-10-27 15:41:43

标签: wcf wsdl xsd

我正在编写IWsdlExportExtension的实现,我收集了一个PropertyInfo个实例的列表,这些实例需要修改相应的XSD声明。为此,我需要确定它们的XML命名空间。

我知道查看DataMemberAttribute是不够的。 WCF库中是否有可以提供该信息的内置方法?否则,算法是否会确定这个?

1 个答案:

答案 0 :(得分:0)

我相信你想要的是获得ContractDescription class的一个实例。该类具有namespace属性。

您可以使用GetContract方法之一获取此类的实例。他们有一个Type参数。所以在你的情况下,你可以使用这种电话:

string myNamespace = ContractDescription.GetContract(
          typeof(IMyService),
          myPropertyInfo.DeclaringType).Namespace;

注意:您还需要合同类型(在此示例中由typeof(IMyService)表示)