MVC 2 EditorForModel () рендеринг имен таблиц внешних ключей - PullRequest
1 голос
/ 18 января 2010

У меня есть интересная проблема, и я хотел посмотреть, видел ли кто-нибудь еще это. Я создал сайт MVC 2 с использованием Visual Studio 2010 beta 2. Я использую linq для создания объектов модели данных sql с аннотациями данных.

В моих объектах модели данных я использую атрибут [ScaffoldColumn (false)], чтобы исключить идентификаторы внешнего ключа из рендеринга в пользовательский интерфейс при использовании метода EditorForModel. По какой-то причине пользовательский интерфейс отображает имя таблицы внешнего ключа.

например. если внешний ключ - AccountID, я вижу «account».

Интересно, это ошибка в редакторе или мне нужно использовать другой / дополнительный атрибут аннотации данных, чтобы указать редактору не делать ничего.

1 Ответ

1 голос
/ 18 января 2010

Классы Linq to SQL будут иметь свойство для самого внешнего ключа (AccountID), а также свойство EntitySet для связанных записей в таблице Accounts. Если вы откроете автоматически сгенерированный файл designer.cs под linq для sql dbml - вы можете просмотреть все свойства каждого класса. Я думаю, что по умолчанию шаблонные помощники должны генерировать редактор только для первого уровня свойств. Существует опция «глубокого погружения», которая расширит сгенерированный редактор до нескольких уровней свойств. Проверьте блог Брэда Уилсона на эту тему (в конце поста).

В общем, попытка добавить автоматически сгенерированные классы Linq to SQL в ваш View или пометить их атрибутами - это довольно сложно. Возможно, стоит проверить строго типизированные модели представления , где вы можете указать только те свойства, которые вы хотите отобразить в своем представлении.

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