ASP.NET MVC V2 - Классы друзей

У кого-нибудь есть пример классов собеседников в ASP.NET MVC 2 Preview 1? Я не могу найти что-либо об этом в MSDN, но, согласно ScottGu, они добавили функциональность для него в самой последней версии.

1 ответ

Решение

Я считаю, что вы ищете MetadataTypeAttribute. Это не что-то особенное для MVC, но это часть пространства имен DataAnnotations, представленного в 3.5. Это позволяет вам украшать членов частичного класса, внешнего по отношению к самому классу.

Например, если у вас был сгенерированный тип класса компонента с именем Customer и вы хотите добавить к нему атрибуты, вы можете создать новый фрагмент в том же пространстве имен и пометить его метаданным типа. Затем создайте класс Metadata с соответствующими атрибутами и украсьте их.

/* Generated class */
public partial class Customer
{ 
  public string Name { get; set; } 
}


/* MetadataType decorated class */
[MetadataType(CustomerMetadata)]
public partial class Customer
{ /* ... */ }


/* Metadata type */
public class CustomerMetadata
{
  [Required(ErrorMessage = "Name is required")]
  public string Name { get; set; }
}
Другие вопросы по тегам