Нужна помощь в дизайне - PullRequest
       21

Нужна помощь в дизайне

0 голосов
/ 16 апреля 2010

У меня такой сценарий в большинстве WindowsForms с сетками У меня есть последовательность кода, которая похожа - AddNewRow (в сетке), CreateNewEntity, notifyUser, несколько других шагов Теперь я хочу использовать шаблонный тип шаблона. Но моя проблема связана с методом CreateEntity, поскольку иногда ему передается параметр, который отличается в зависимости от типа создаваемого объекта. Должен ли я сделать createentity принять тип «объект», и приведение, когда параметр будет использоваться. Каким другим способом я могу решить эту проблему дизайна? Также CreateEntity возвращает создаваемый объект.

На самом деле мой сценарий имеет шаблон MVP. Теперь большая часть взаимодействия презентатора и представления в большинстве форм одинакова - пользователь нажимает кнопку «Добавить», добавляется новая строка с некоторыми значениями по умолчанию для объекта (для отображения в сетке ) и некоторые другие общие вещи

1 Ответ

0 голосов
/ 16 апреля 2010

Рассматривали ли вы использование шаблонной функции? Вероятно, это не очень хороший пример, но трудно представить, каким будет хороший пример без более конкретной информации:

interface IInitializable
{
   void Initialize(string input);
}

public T CreateNewEntity<T>(T inputObject, string otherData) where T : IInitializable
{
   inputObject.Initialize(otherData);
   return inputObject;
}
...