علی فتحی
پنج شنبه 22 مرداد 1394, 19:54 عصر
سلام برای ذخیره اطلاعات جدول در فایل متنی این کد رو پیدا کردم تست شده و دقیق کار میکنه
private DataTable GetDataTableFromDGV(DataGridView dataGridViewX1) {
var dt = new DataTable();
foreach (DataGridViewColumn column in dataGridViewX1.Columns)
{
if (column.Visible)
dt.Columns.Add();
}
object[] cellValues = new object[dataGridViewX1.Columns.Count];
foreach (DataGridViewRow row in dataGridViewX1.Rows)
{
for (int i = 0; i < row.Cells.Count; i++)
{
cellValues[i] = row.Cells[i].Value;
}
dt.Rows.Add(cellValues);
}
return dt;
}
private void buttonX4_Click(object sender, EventArgs e)
{
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.Filter = "Xml files (*.xml)|*.xml";
saveDialog.InitialDirectory = "d:\\";
saveDialog.FileName = "XML File";
saveDialog.Title = "XML Export";
if (saveDialog.ShowDialog() == DialogResult.OK)
{
DataTable dt = GetDataTableFromDGV(dataGridViewX1);
dt.TableName = "Table1"; // table name is required
dt.WriteXml(saveDialog.FileName);
}
}
حالا برای بازیابی چ کار میشه کرد؟ یعنی اطلاعات قبلی جدول کلا پاک بشه بعد از اون اطلاعات فایل متنی xml دوباره اضافه بشه .
با تکنولوژی EF
private DataTable GetDataTableFromDGV(DataGridView dataGridViewX1) {
var dt = new DataTable();
foreach (DataGridViewColumn column in dataGridViewX1.Columns)
{
if (column.Visible)
dt.Columns.Add();
}
object[] cellValues = new object[dataGridViewX1.Columns.Count];
foreach (DataGridViewRow row in dataGridViewX1.Rows)
{
for (int i = 0; i < row.Cells.Count; i++)
{
cellValues[i] = row.Cells[i].Value;
}
dt.Rows.Add(cellValues);
}
return dt;
}
private void buttonX4_Click(object sender, EventArgs e)
{
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.Filter = "Xml files (*.xml)|*.xml";
saveDialog.InitialDirectory = "d:\\";
saveDialog.FileName = "XML File";
saveDialog.Title = "XML Export";
if (saveDialog.ShowDialog() == DialogResult.OK)
{
DataTable dt = GetDataTableFromDGV(dataGridViewX1);
dt.TableName = "Table1"; // table name is required
dt.WriteXml(saveDialog.FileName);
}
}
حالا برای بازیابی چ کار میشه کرد؟ یعنی اطلاعات قبلی جدول کلا پاک بشه بعد از اون اطلاعات فایل متنی xml دوباره اضافه بشه .
با تکنولوژی EF