Я пытаюсь использовать WCF в первый раз, однако я быстро ударил проблему, которую я не понимаю. Я еще не изменил исходную структуру автоматически сгенерированного кода. Я получил этот код для работы на веб-сайте.Использование типов данных WCF
using ServiceReference.ServiceClient wcfClient = new ServiceReference.ServiceClient())
{
string data = wcfClient.GetData(32);
Label1.Text += data;
}
Но когда я начал использовать этот код, у меня возникла проблема.
ServiceReference.Kund kund;
using (ServiceReference.ServiceClient wcfClient = new ServiceReference.ServiceClient())
{
string data = wcfClient.GetDataUsingDataContract(kund);
}
У меня эта ошибка. Я не вижу никакой проблемы с типом данных, это не строка.
Не может неявно преобразовать тип 'Webbshop.ServiceReference.Kund' в 'строка'
Edit:
[ServiceContract]
public interface IService
{
[OperationContract]
string GetData(int value);
[OperationContract]
Kund GetDataUsingDataContract(Kund kund);
}
[DataContract]
public class Kund
{
int iD;
[DataMember]
public int ID
{
get { return iD; }
set { iD = value; }
}
}
Я только изменил тип данных в интерфейс
[ServiceContract] public interface IService { [OperationContract] string GetData(int value); [OperationContract] Kund GetDataUsingDataContract(Kund kund); // TODO: Add your service operations here } [DataContract] public class Kund { int iD; [DataMember] public int ID { get { return iD; } set { iD = value; } } }
– FrozendragonТеперь я вижу проблему, я пытаюсь присвоить возвращаемое значение строке, это так очевидно, я пропустил ее. xD – Frozendragon
@Frozendragon: был там, сделал это - иногда это настолько очевидно, что вы просто не замечаете его, пытаясь понять это :-) Случается всем нам, я уверен :-) –