Расслабляющие ограничения для адаптера таблицы данных - PullRequest
2 голосов
/ 17 октября 2011

Я пытаюсь ослабить свои ограничения при использовании адаптера таблицы данных, но получаю Ссылку на объект, не установленную для экземпляра ошибки объекта . Это происходит в строке с сообщением ds.DataSet.EnforceConstraints = false;

Как правило, я хотел бы знать, как сохранить dataTable от применения ограничений.

ubsmysDataSetTableAdapters.FormSaveDataTableAdapter ta = new ubsmysDataSetTableAdapters.FormSaveDataTableAdapter();

myDataSet.FormSaveDataDataTable ds = new myDataSet.FormSaveDataDataTable();

ds.DataSet.EnforceConstraints = false;

if (isAdmin) ds = ta.GetByUserIdForAdminUser(userId);
else ds = ta.GetByUserId(userId);
ds.DataSet.EnforceConstraints = true;

Я довольно новичок в этом, поэтому любая помощь будет оценена.

Ответы [ 2 ]

1 голос
/ 17 октября 2011

Попробуйте следующее, вам, возможно, придется настроить текст, который вы видите синим цветом, чтобы он идеально соответствовал вашему, но вы должны быть в состоянии понять:

Использовать заливкуспособ получения ваших данных:

ubsmysDataSet ds = new ubsmysDataSet();

ubsmysDataSet.FormSaveDataDataTable dt = new ubsmysDataSet.FormSaveDataDataTable();

ds.Tables.Add(dt);

ds.EnforceConstraints = false;

ubsmysDataSetTableAdapters.FormSaveDataTableAdapter ta = new ubsmysDataSetTableAdapters.FormSaveDataTableAdapter();

if (isAdmin)
{

}
else
{
    ta.FillByUserId(dt,130559)
}

ds.EnforceConstraints = true;

См. добавленную строку выше.

0 голосов
/ 17 октября 2011
new myDataSet.FormSaveDataDataTable();

возвращает null, поэтому ds будет null при попытке ds.DataSet.EnforceConstraints = false;.

Что-то здесь не так, но вы не опубликовали весь код, мы не можем полностью оценить.

...