Где я должен поместить функцию, которая вызывается много раз? - PullRequest
4 голосов
/ 29 мая 2011

Это продолжение этого вопроса Как избежать повторного кода?

Я использую ASP.NET 4.0 с C # и у меня есть функция с именем FillDropDownList(DropDownList ddl, DataTable dt, string dataValueField, string dataTextField, string defValue), котораязвонил несколько раз на одной из моих страниц ASP.NET, чтобы заполнить некоторые выпадающие списки.Теперь я обнаружил, что у меня есть несколько страниц, на которых мне нужно заполнить несколько выпадающих списков одним и тем же способом.

Вместо того, чтобы копировать и вставлять один и тот же код на разных страницах, я должен создать новый класс и поместить методв этом новом классе?Как бы я это назвал?Как мне назвать класс?Должны ли в нем быть другие функции?Я думал, может быть, я должен назвать это Util?Что бы вы сделали?

1 Ответ

3 голосов
/ 29 мая 2011

Вы можете создать статический класс и поместить туда свою функцию

public static class DropDownFiller
{
   public static void  FillDropDownList(DropDownList ddl, DataTable dt, string dataValueField, string dataTextField, string defValue)
   {
        /// bla bla
   }
}

Или вы можете создать расширение для DropDownList (это также статический класс)

public static class DropDownListExtension
{
   public static void  FillDropDownList(this DropDownList ddl, DataTable dt, string dataValueField, string dataTextField, string defValue)
   {
        /// bla bla
   }
}

Использование (например, метод DropDownList)

yourDropDownList.FillDropDownList(dataTable,valueField,textField,defValue);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...