在我的项目中学习网络引用已经几天了,我现在遇到了一个奇怪的问题。
我使用了一个简单的控制台应用程序:
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 条目。删除其中一个,它将正常工作。
关于c# - 使用网络引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9605950/