Я создал одно приложение службы WCF. Существует несколько методов в Service1.svc
.Вызвать метод WCF от клиента C#
Вот мой IService1.cs
[OperationContract]
GetUserDetailsByEmail_Result GetUserDetailsByEmail(string email);
Вот мой Service.svc.cs
public class Service1 : IService1
{
#region GetUserDetails
public GetUserDetailsByEmail_Result GetUserDetailsByEmail(string email)
{
return (new UserManager()).GetUserDetailsByEmail(email);
}
#endregion
}
Здесь GetUserDetailsByEmail_Result
будет Complex type
создан в DemoModel.edmx. Он содержит некоторые Скалярное имущество.
В основном, что я пытаюсь сделать, я хочу назвать этот метод от Клиент (C#). Вот мой стороне клиента код
//svc.GetUserDetailsByEmailCompleted += new EventHandler<GetUserDetailsByEmailCompletedEventArgs>(svc_GetUserDetailsByEmailCompleted);
GetUserDetailsByEmail_Result dtbUserDetails = svc.GetUserDetailsByEmailAsync(loginName);
Здесь SVC является объектом Service1Client
. Здесь я просто вызываю метод wcf. Это дает мне ошибку
Не может неявно преобразовать тип «пустоты» до «» Demo.DemoServiceReference_Client.GetUserDetailsByEmail_Result
Он работает, когда я использую svc_GetUserDetailsByEmailCompleted метод. Но я хочу вернуть данные непосредственно в dtbUserDetails
. Как я могу это достичь? Есть ли какие-либо изменения в моей службе WCF или на моей стороне клиента? Или в декларации метода WCF?
Я не буду использовать объектные объекты сущности в качестве объектов возврата, вместо этого создайте простой POCO для работы в качестве объектов передачи данных. – Oscar
Спасибо за ответ. Но я не знаю о POCO. Не могли бы вы дать мне ссылку или учебник? –
Обычный Старый C-Sharp Объект: http://en.wikipedia.org/wiki/Plain_Old_CLR_Object – Oscar