Я создаю приложение asp.net mvc, чтобы пользователи могли участвовать в конкурсе эссе. У меня есть таблица эссе в SQL Server 2005. Я создал свои доменные модели, перетаскивая таблицы в обозревателе серверов и сохраняя макет как то, что я назвал DAL.dbml.
Сейчас я пытаюсь реализовать проверку поля ввода на бизнес-уровне, используя методы, упомянутые в главе 11 Pro ASP.NET MVC Framework Стивена Сандерсона. Но автор не создавал свои модели, как я, поэтому я не знаю, куда поместить свой код для конкретной модели.
Я подумал о том, чтобы поместить его в автоматически сгенерированный файл DAL.designer.cs, но это кажется проблематичным.
Я также попытался создать новый класс EssayRequired.cs, где я сделал расширение EssayRequired Essay. Это почти сработало.
Он успешно показал все ошибки валидации.
Но когда приходит время действительно сохранить запись:
EssayTable.Context.Refresh(RefreshMode.KeepCurrentValues, essay);
EssayTable.Context.SubmitChanges();
Я получаю эту ошибку:
Тип 'DomainModel.Entities.EssayRequired' не отображается в виде таблицы.
Есть идеи, что мне делать сейчас? Есть ли лучшее место для размещения специфичного для домена кода, который не будет уничтожен, если таблица БД изменится, и мне придется удалить и заново перетащить таблицу?
Или есть способ сообщить приложению, что объект EssayRequired должен попасть в таблицу эссе .?
Спасибо, Скотт