ASP.NET MVC V2 - Классы - приятели
-
12-09-2019 - |
Вопрос
Есть ли у кого-нибудь пример вспомогательных классов в ASP.NET Предварительный просмотр MVC 2 1?Кажется, я не могу найти что-либо в MSDN по этому поводу, но, согласно СкоттГу они добавили функциональность для него в самой последней версии.
Решение
Я полагаю, что то, что вы ищете, - это MetadataTypeAttribute .Это не что-то специфичное для MVC, но это часть пространства имен DataAnnotations, представленного в 3.5.Это позволяет вам украшать члены частичного класса, внешнего по отношению к самому классу.
Например, если у вас был сгенерированный тип частичного класса с именем Customer и вы хотели добавить к нему атрибуты, вы могли бы создать новый частичный класс в том же пространстве имен и пометить его MetadataType .Затем создайте класс метаданных с соответствующими атрибутами и украсьте их.
/* 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; }
}