当我尝试读取元数据时,我收到此错误,这里的任何想法都是我的代码
WSHttpBinding binding = new WSHttpBinding(SecurityMode.None);
binding.MaxReceivedMessageSize = Int32.MaxValue; // DPNote: This may actually be too big. see how it performs.
binding.ReaderQuotas.MaxNameTableCharCount = 99999999;
MetadataExchangeClientMode exchangeMode = MetadataExchangeClientMode.HttpGet; // Default to a HttpGET
metaClient = new MetadataExchangeClient(binding);
metaClient.MaximumResolvedReferences = 10 * 100; //DPNote: Some arbitrary number. Default is 10, so this is bigger.
if (address.Scheme == "http")
exchangeMode = MetadataExchangeClientMode.HttpGet;
else if (address.Scheme == "https")
exchangeMode = MetadataExchangeClientMode.HttpGet;
else
exchangeMode = MetadataExchangeClientMode.MetadataExchange;
MetadataSet metadata = metaClient.GetMetadata(address, exchangeMode);
MetadataImporter importer = new WsdlImporter(metadata);
Run Code Online (Sandbox Code Playgroud)
这是抛出错误的行
MetadataSet metadata = metaClient.GetMetadata(address, exchangeMode);
Run Code Online (Sandbox Code Playgroud)
如果您通过visual studio执行"更新引用",请将这些行添加到devenv.exe.config
<system.serviceModel>
<client>
<endpoint binding="netTcpBinding" bindingConfiguration="GenericBinding" contract="IMetadataExchange" name="net.tcp" />
</client>
<bindings>
<netTcpBinding>
<binding name="GenericBinding"
maxBufferPoolSize="2147483647" maxBufferSize="2147483647"
maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="2147483647"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
<security mode="None" />
</binding>
</netTcpBinding>
</bindings>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2993 次 |
| 最近记录: |