C# · 12月 26, 2021

c# – 使用网络参考

因此,在我的项目中学习Web引用几天后,我现在遇到了一个奇怪的问题.

使用简单的控制台应用程序我这样做:

namespace Webservices09004961{ class Program { static void Main(string[] args) { { Convert.ConvertTemperatureSoapClient client = new Convert.ConvertTemperatureSoapClient(); while (true) { Console.Write(“Enter temperature in Celsius: “); double tempC = double.Parse(Console.ReadLine()); double tempF = client.ConvertTemp(tempC,Convert.TemperatureUnit.degreeCelsius,Convert.TemperatureUnit.degreeFahrenheit); Console.WriteLine(“That is ” + tempF + ” degrees Farenheit”); } } } }}

我在服务引用中添加了与此链接相关的“转换”:
http://www.webservicex.net/ConvertTemperature.asmx?WSDL

但是我收到此错误:

An endpoint configuration section for contract ‘Convert.ConvertTemperatureSoap’ Could not be loaded because more than
one endpoint configuration for that contract was found. Please
indicate the preferred endpoint configuration section by name.

这是因为您一次只能分配一个服务引用吗?我问的原因是因为我在同一项目构建中的本地服务引用仍然可以正常工作?然而这个不是吗? (它是我第一次创建时做的)

或者这是一个单独的问题?

还有什么限制SOAP?

解决方法 当您尝试删除svc引用并再次添加它时,此错误很常见.检查你的app / web.config文件,你应该有Convert.ConvertTemperatureSoap的重复条目.删除其中一个,它会正常工作.