Проверить атрибуты через EDMX - PullRequest
1 голос
/ 13 марта 2012

Я работаю над проектом MVC3. Я создал свою базу данных на SQL Server 2008, затем добавляю ее, используя модель данных объекта, теперь у меня есть .edmx, я не хочу генерировать код классов, потому что до сих пор это не стабильно, и я не чувствую необходимости делать это, кроме как для проверки Мне интересно, если есть способ сделать проверку непосредственно с помощью .edmx без генерации кода классов Требуется проверка на стороне сервера и клиента Приветствия

Ответы [ 2 ]

6 голосов
/ 13 марта 2012

Вы не можете сделать это из EDMX. Однако у вас могут быть классы, которые добавляют метаданные к сгенерированным edmx классам.

Это добавляет метаданные, содержащие класс, к классу, который был сгенерирован edmx:

[MetadataTypeAttribute(typeof(CustomerMetadata))]
public partial class Customer
{
}

и у вас есть класс метаданных, который имеет атрибуты метаданных:

internal sealed class CustomerMetadata
{
    public int ID;

    [Required]
    [StringLength(60)]
    public string Name;
}

Edit: EF генерирует все свои классы как частичные. Это означает, что вы можете добавить функциональность в другом файле к тому же классу. Мы используем эту функцию, чтобы добавить атрибут, сообщающий .net, что есть класс, содержащий информацию метаданных. В этом случае класс с метаданными для класса Customer равен CustomerMetadata.

Он имеет все свойства, которые вы хотите, украшенные метаданными. В этом случае ID не обязательно должен быть там.

0 голосов
/ 29 августа 2013

(я бы добавил это как комментарий, но у меня пока недостаточно очков репутации) Убедитесь, что пространство имен в вашем частичном классе точно соответствует пространству имен сгенерированного EF класса, включая правильный регистр.

...