Службы данных WCF и Entity Framework 4.1 Сложные типы - PullRequest
2 голосов
/ 08 июня 2011

Я использую WCF Dataservice для получения своих сущностей из DbContext.Мои объекты имеют сложный тип, который содержит некоторые метаданные (свойства DateTime и Guid).Вот мой код:

 var uri = new Uri(webServiceUrl);
            service = new DataServiceContext(uri);
            localcontext = Globals.DbConnection.Create();

            var list = service.CreateQuery<ActivityCode>("DbActivityCodes").Expand("Parent").Expand("ReplicaInfo").Where(x => x.ReplicaInfo.CreatedById != Guid.Empty);

Этот код вызывает исключение:

Cannot compare elements of type 'Crm.Objects.ReplicaInfo'. Only primitive types (such as Int32, String, and Guid) and entity types are supported.

Другая проблема заключается в том, что, если я удаляю Where query expression, я обнаруживаю, что мой сложный тип ReplicaInfo пуст.

Итак, вот мои вопросы:

  • Как получить сложные типы через службу данных WCF?

  • Как отфильтровать посложные типы через службу данных WCF?

...