Проблема метаданных ASP.NET MVC3 для класса, названного ключевым словом .NET - PullRequest
2 голосов
/ 08 марта 2011

У меня проблема при добавлении метаданных в класс, названный в качестве зарезервированного ключевого слова. Во время генерации модели данных (файл DBML) к имени класса был добавлен символ @, чтобы он работал.

Когда я применяю метаданные к классу, он не работает (информация метаданных не учитывается - DisplayName и другие средства проверки). Для всех других классов моего проекта (у которых нет имени класса в качестве зарезервированного ключевого слова, это работает). В настоящее время невозможно переименовать этот класс.

Сгенерированное определение класса:

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.operators")]
public partial class @operator : INotifyPropertyChanging, INotifyPropertyChanged
{...}

Определение класса метаданных:

[MetadataType(typeof(OperatorMetaData))]
public partial class @operator
{
}

public class OperatorMetaData
{
    [DisplayName("Operator Type")]
    [Required(ErrorMessage = "Operator type is required.")]
    public int operator_type_id { get; set; }
    ...
}

Кто-нибудь есть идеи, как обойти это? Или что я сделал не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...