В трехуровневой модели (уровни доступа к бизнес-данным, презентации) я могу постоянно сохранять свои нижние уровни независимыми от верхних. Например, мой уровень доступа к данным никогда не знает, как он представлен или какие бизнес-правила на нем действуют. Мои бизнес-правила не зависят от того, как они представлены.
Но я должен молиться Деметре о прощении или, по крайней мере, попросить совета у других участников Stackoverflow по одному вопросу: как вы представляете «Таблицу» пользователю, не ссылаясь на объект доступа к данным на уровне представления? Снова и снова я обращаюсь к ADO.NET DataTable в объекте GridView. В настоящее время я использую сторонние инструменты на обоих уровнях. Таблица взята из объекта OpenComponents Table OpenLink; сетка - это Infragistics UltraGrid (платформа Windows). Тем не менее, я виновен в том же нарушении.
edit: Меня особенно интересует, как это можно сделать с помощью WinForm 3.5 .NET. Обратите внимание на мои комментарии ниже: я считаю, что ссылка в комментарии - это то, что я должен был сделать, но я надеялся, что мне не придется слишком увлекаться объектами домена. Я не хочу, чтобы меня обвиняли в чрезмерном проектировании. Это хороший баланс?