ASP.NET Дополнительные Частичные Классы - PullRequest
1 голос
/ 15 февраля 2009

У меня есть огромный код для файла на одной из моих страниц ASP.NET. Было бы легче поддерживать код, если бы я мог разбить его на несколько частичных классов. Однако это не очень хорошо документировано для ASP.NET.

Я узнал, что дополнительные частичные классы должны быть перемещены в папку App_Code. Кажется, мне нужно использовать объявления Protected WithEvents для ссылки на мои веб-элементы управления (хотя я не уверен, что это будет работать пока).

Сейчас я вешаю трубку - это ViewState. Я не могу сослаться на это в дополнительном частичном файле класса. Мне нужно получить идентификационный номер из строки запроса в частичном классе. Если я создаю открытое свойство в коде файла для значения строки запроса, на него нельзя ссылаться в файле частичного класса. Это не появляется.

Ответы [ 3 ]

2 голосов
/ 15 февраля 2009

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

0 голосов
/ 15 февраля 2009

Мышление в слоях - это хороший подход. Подумайте, как вы взаимодействуете с базой данных и для каких объектов вы извлекаете данные, и создайте для них классы «Уровень данных». Их целью должно быть строго взаимодействие с базой данных и, возможно, возвращение набора данных с соответствующими данными (создайте стандарт и следуйте ему!). Затем подумайте, какие бизнес-правила вы применяете к данным для этого объекта, и создайте класс «Бизнес-уровень» с методами, которые вызывают ваш класс уровня данных и применяют эти правила на этом уровне. На этом этапе данные должны быть готовы к отображению, и ваш «Уровень представления» (кодовый компонент) отвечает за то, где / когда / как это выполняется.

Мое объяснение не очень хорошее, но, надеюсь, вы поняли идею.

0 голосов
/ 15 февраля 2009

Если ваш файл с выделенным кодом действительно такой большой, то вам, вероятно, нужно перенести некоторую логику в другие классы. Изучите шаблон Model-View-Controller и исследуйте ASP.NET MVC framework , чтобы узнать, как лучше расположить ваши объекты.

В ASP.NET сильно пахнет кодом, когда все помещают в файлы с выделенным кодом. Это приводит к не масштабируемым и не поддерживаемым приложениям.

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