powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Dictionary с CallBack ?
3 сообщений из 3, страница 1 из 1
Dictionary с CallBack ?
    #39950682
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вечер.
Есть датасет, который заполняется не из БД, а вручную.
После того как в него добавлена строка, её значения заполняются автоматически. Но так можно заполнить не все поля.
Для тех полей, для который значение не найдено, вызывается спец функция ниже.
Работает как надо, но как то выглядит не очень.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
public object FindFieldValue(DataRow CurrentRow, string FieldName)
{
//FieldName:название поля, для которого значение не найдено
 if (FieldName=="MessageToUser")
   return "Hello, "+CurrentRow["UserName"].ToString();
 
 if (FieldName=="EMail")
   return CurrentRow["UserName"].ToString()+"@somewhere@host.com";

//и т.д... ещё штук 5 аналогичных if
 return null;
}



А я бы сначала хотел заполнить примерно такой Dictinary, и потом получать от туда значения.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
var DefaultValues = new Dictionary<string, ReturnValue>
DefaultValues.Add("MessageToUser", return "Hello, "+CurrentRow["UserName"].ToString()));
DefaultValues.Add("EMail",return CurrentRow["UserName"].ToString()+"@somewhere@host.com";


public object FindFieldValue(DataRow CurrentRow, string FieldName)
{
  if (DefaultValues.Contains(FieldName))
    return DefaultValues[FieldName](CurrentRow)
     else
    return null;
}


Можно ли так сделать ?
...
Рейтинг: 0 / 0
Dictionary с CallBack ?
    #39950771
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно
...
Рейтинг: 0 / 0
Dictionary с CallBack ?
    #39951145
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

Я так и думал.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Dictionary с CallBack ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]