.NET RIA Services: связанные метаданные содержат следующие неизвестные свойства или поля.

Итак, я поигрался с .NET RIA Services с Silverlight и создал новый DomainService на основе пары сущностей из LINQ2SQL DataContext.

Когда я попытался скомпилировать, я получил эту ошибку:

Ошибка 2 Для объекта Data.Service не определен ключ. Сущности, предоставляемые операциями DomainService, должны иметь хотя бы одно свойство, помеченное атрибутом KeyAttribute. Портал

Итак, я добавил класс метаданных для объекта Service, например:

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace Data
{
    [MetadataType(typeof(Service.ServiceMetadata))]
    public partial class Service
    {
        internal sealed class ServiceMetadata
        {
            [Key]
            public int PublicAPI;
        }
    }
}

Теперь я получаю эту ошибку:

Ошибка 4 Связанный тип метаданных для типа Data.Service содержит следующие неизвестные свойства или поля: PublicAPI. Убедитесь, что имена этих членов совпадают с именами свойств основного типа. Портал

PublicAPI определенно определен в основном объекте, генерируемом L2S, пространства имен такие же. Есть идеи относительно того, что я делаю неправильно?

Я понимаю, что службы .NET RIA по-прежнему являются CTP, но это похоже на фундаментальную часть инфраструктуры, которая должна работать.


person Jason Miesionczek    schedule 08.09.2009    source источник


Ответы (1)


Я решил эту проблему. DataContext, на который ссылался, находился в другой сборке, а частичные классы, которые я определял, были в веб-проекте, поэтому между версиями классов, которые система пыталась использовать, было какое-то разъединение.

Перенос контекста данных в веб-проект решил эту проблему.

person Jason Miesionczek    schedule 08.09.2009