У меня есть DAL, где у меня есть Entity Framework для предоставления сущностей.Эти объекты используются в проекте службы WCF и доступны клиенту.
Я использую эти объекты в веб-проекте Silverlight через ссылку на службу.Тогда я использую службу домена RIA для совместного использования кода.Но я получаю следующую ошибку при попытке загрузить операцию:
DomainContext context= new DomainContext();
LoadOperation<Genre> lo = context.Load<Genre>(context.GetGenres());
GetGenres () - это операция службы домена, в которую загружаются все жанры.
[Invoke]
public IEnumerable<Genre> GetGenres()
{
return proxy.GetGenres(); //proxy is wcf proxy.
}
Этот запрос возвращает список.Где Genre - это DataContract, который я получил из WCFServiceReference.
Фактическая ошибка:
Тип 'SL.Web.ServiceReference.Genre' нельзя использовать в качестве параметра типа 'TEntity' вуниверсальный тип или метод «System.ServiceModel.DomainServices.Client.DomainContext.Load (System.ServiceModel.DomainServices.Client.EntityQuery)».Не существует неявного преобразования ссылок из 'SL.Web.ChinookServiceReference.Genre' в 'System.ServiceModel.DomainServices.Client.Entity'.
Вопрос:
Могу ли я сделатьтаким образом, или я должен иметь пользовательский класс в Silverlight, который сопоставляется с данными службы WCF и совместно использует пользовательский объект между клиентом Silverlight и веб-проектом?
Существует ли способ обмена объектами из ссылки на службу между Webа клиент использует DomainService ??