Добавить адаптер таблицы набора данных в ApplicationEvents.vb? - PullRequest
0 голосов
/ 28 августа 2011

В моем ApplicationEvent.vb есть некоторый код для обработки параметров командной строки, а затем для запуска некоторых процедур в зависимости от того, какой параметр был введен в cmd.

Проблема в том, что мне нужно выполнить процедуру, в которой есть адаптер таблицы набора данных.

Очевидно, что, поскольку я хочу, чтобы он работал в пакетном режиме, у меня не может быть настольного адаптера, так как они основаны на графическом интерфейсе (или, по крайней мере, я так думаю), поэтому я получаю эту ошибку:

'V_SyncStatusTableAdapter' is not a member of 'AppName.My.MyApplication'

Для этого кода:

If Me.V_SyncStatusTableAdapter.GetData.Rows.Count > 0 Then
      drSyncResult = Me.V_SyncStatusTableAdapter.GetData.Rows(0)

Теперь это очевидно, потому что адаптер таблицы не имеет и AFAIK не может быть помещен в файл ApplicationEvents.vb.

Я знаю, что набор данных называется: dsetWorkingTables, а таблица называется v_SyncStatus. Я пробовал:

dsetWorkingTablesTableAdapters.v_SyncStatusTableAdapter.GetData но это дает:

reference to non shared member requires object reference

Итак, мой вопрос:

Как получить данные из набора данных в файле ApplicationEvents.vb?

Ответы [ 2 ]

1 голос
/ 28 августа 2011

Является ли ваш настольный адаптер отдельным проектом от событий приложения?Если это так, вам нужно сослаться на этот проект.

Настольные адаптеры предназначены не только для графического интерфейса, они также могут использоваться в пакетных или консольных приложениях.

1 голос
/ 28 августа 2011

Вам необходимо сопоставить адаптер таблицы с классом формы, в котором он существует. Даже с формами вы все равно можете обращаться к методам в формах по своему усмотрению, чего вы хотите избежать, так это form.Show (), который будет использовать форму появляться на экране.

...