Я пытаюсь установить оператор if, чтобы проверить, была ли уже создана таблица. Я хочу создать только одну таблицу, но теперь я создаю таблицу каждый раз, когда я нажимаю кнопку, чтобы сохранить информацию. Какие-либо предложения?Проверьте, существует ли таблица с инструкцией if в C#?
DataTable dt;
private void InitDataTable()
{
if() {
}
dt = new DataTable();
DataSet ds = new DataSet();
ds.ReadXml("gjesteInfo.xml");
ds.Tables.Add(dt);
DataColumn dc1 = new DataColumn("Fullt navn");
DataColumn dc2 = new DataColumn("Start dato");
DataColumn dc3 = new DataColumn("Antall dager");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
dt.Rows.Add(gjestenavnInput.Text, datoInnsjekk.Text, antallDager.Text);
ds.Merge(dt);
ds.WriteXml("gjesteInfo.xml");
}
private void lagre_Click(object sender, EventArgs e)
{
InitDataTable();
gjesterutenrom.Items.Add(gjestenavnInput.Text);
gjestenavnInput.Text = "";
datoInnsjekk.Text = "";
antallDager.Text = "";
DataSet onClick = new DataSet();
onClick.ReadXml("gjesteInfo.xml");
lagredeGjester.DataSource = onClick.Tables[0];
}
Я пытаюсь выйти информацию, хранящуюся в XLM с DataGridView именем lagredeGjester, как видно более.
ОБНОВЛЕНО ВОПРОС:
Теперь я написал такой код:
DataTable dt;
DataSet ds = new DataSet();
private void InitDataTable()
{
if(ds.Tables.Contains("Gjester") )
{
dt.Rows.Add(gjestenavnInput.Text, datoInnsjekk.Text, antallDager.Text);
ds.Merge(dt);
ds.WriteXml("gjesteInfo.xml");
}
else {
dt = new DataTable("Gjester");
ds.ReadXml("gjesteInfo.xml");
ds.Tables.Add(dt);
DataColumn dc1 = new DataColumn("Fullt navn");
DataColumn dc2 = new DataColumn("Start dato");
DataColumn dc3 = new DataColumn("Antall dager");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
dt.Rows.Add(gjestenavnInput.Text, datoInnsjekk.Text, antallDager.Text);
ds.Merge(dt);
ds.WriteXml("gjesteInfo.xml");
}
}
На моем первом запуске я вошел два разных infomations и прижала мою кнопку. Обе информации попали в ту же таблицу, что и я. Но я не могу правильно написать свое утверждение if. Когда я запускаю код выше, он работает с пустым XML (без таблиц), но пока создается таблица «Gjester», он говорит: «DataTable с именем« Gjester »уже принадлежит этому набору данных». Но разве это не означает, что должно быть предотвращено мое утверждение if? Как я писал сейчас, не следует ли добавлять информацию и не пытаться создать новую таблицу?
Я пытался вам последнее предложение, но все это я получаю «Не удается неявно преобразовать тип System.Data.DataTable в BOOL» – Praise
на какой альтернативе вы получили эту ошибку? – Freelancer
@MariusMathisen попробовал изменить мой отредактированный последний вариант – Freelancer