Вопрос о службе отдыха WCF
Привет,
Я написал службу WCF Rest для использования некоторых сервисных контрактов из приложения Xamarin Forms.
Я использовал шаблон проектирования репозитория и единицу работы для транзакций базы данных в DAL.
Затем я написал класс MobileResult для коллективизации моих возвращенных объектов.
Но почему-то это не работает.
Не могли бы вы помочь мне с этим вопросом?
Спасибо.
Что я уже пробовал:
Я написал контракт на операцию Вот так;
[OperationContract] [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "GetWorkCommandsInProduction")] MobileResult GetAllWorkCommandsInProduction();
Я написал свой MobileResult вот так;
[DataContract] public class MobileResult { [DataMember] public bool result { get; set; } [DataMember] public object data { get; set; } public MobileResult(bool res, object obj) { result = res; data = obj; } }
И наконец именно здесь я возвращаю MobileResult;
public MobileResult GetAllWorkCommandsInProduction() { UnitOfWork work = new UnitOfWork(new BILPLASDatabaseContext()); var products = work.Repository<WorkCommandProductions>().GetAll(); // In here my 'products' is filled(there is no problem with this) // But I get 'System.Runtime.Serialization.SerializationException' in // System.Runtime.Serialization.dll // I tried to return only one 'product' object but I get same error again. // When I return only one property of one 'product' object(ex. // products[0].ID) then it returns without exception. return new MobileResult(true, products); }