Я обновляю ссылку на сервис wcf через SvcUtil.exe.Команда выглядит следующим образом:
SvcUtil.exe http://localhost:50886/Service1.svc /n:*,ClassLibrary2.ServiceReference1 / o: ссылки на службы \ ServiceReference1 \ Reference.cs / ct: System.Collections.Generic.List`1, mscorlib, версия = 2.0.0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089 /config:app.config
А мой код wcf выглядит следующим образом:
==============================================================
namespace WcfService1
{
[ServiceContract]
[ServiceKnownType(typeof(Dictionary<string, string>))]
public interface **IService1**
{
[OperationContract]
string GetData(int value);
// TODO: Add your service operations here
[OperationContract]
string Hello(string value);
}
}
namespace WcfService1
{
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public string Hello(string value)
{
return string.Format("You entered: {0}", value);
}
}
}
Я использую этот сервис в своем проекте библиотеки классов, имя которого - ClassLibrary1.Когда я обновляю этот сервис через visual studio, тогда в Reference.cs я получаю следующее утверждение:
[System.ServiceModel.ServiceContractAttribute(ConfigurationName="**ServiceReference1.IService1**")]
public interface IService1
Но когда я обновляю сервис через svcutil, я получаю следующее утверждение:
[System.ServiceModel.ServiceContractAttribute(ConfigurationName="**ClassLibrary2.ServiceReference1.IService1**")]
public interface IService1
Разница заключается в имени конфигурации.Я не понял, какую команду использовать в svcutil для установки имени конфигурации, как ServiceReference1.IService1 ?
Пожалуйста, помогите.