我正在使用xtragrid保存,加载和修改数据。现在切换到EF5后,它不起作用。试图将我的代码更改为local
和tobindinglist
,但数据库中没有任何更改。有什么建议么?使用实体框架5.0和xtragrid保存数据
public partial class formKonstruksiyon : Form
{
public Tank_Analizor_DBEntities db;
public formKonstruksiyon()
{
InitializeComponent();
db = new Tank_Analizor_DBEntities();
}
private void formKonstruksiyon_Load(object sender, EventArgs e)
{
konstruksiyonBindingSource.DataSource = db.Konstruksiyon.Local.ToBindingList();
gridControl1.DataSource = konstruksiyonBindingSource.DataSource;
}
private void barButtonItemSave_ItemClick(object sender,
DevExpress.XtraBars.ItemClickEventArgs e)
{
try
{
db.SaveChanges();
LibStatic.ShowSuccessMessage();
}
catch (Exception ex)
{
LibStatic.ShowErrorMessage(ex);
}
}
private void silToolStripMenuItem_Click(object sender, EventArgs e)
{
gridView1.DeleteRow(gridView1.FocusedRowHandle);
}
}
改变后有些更新:
konstruksiyonBindingSource.DataSource = db.Konstruksiyon.ToList();
private void barButtonItemSave_ItemClick(object sender,
DevExpress.XtraBars.ItemClickEventArgs e)
{
LibStatic.GridPostPendingRow(gridView1);
try
{
konstruksiyonBindingSource.DataSource = db.Konstruksiyon.Local.ToBindingList();
db.SaveChanges();
LibStatic.ShowSuccessMessage();
}
catch (Exception ex)
{
LibStatic.ShowErrorMessage(ex);
}
}
它像是节省:如果我只添加一个条目,但它节省了,如果我添加了两个它不保存。这怎么可能呢?
你用'db.Konstruksiyon'试过了吗? – Jay
是的,我得到一个错误,说“数据绑定直接存储查询(DbSet,DbQuery,DbSqlQuery)不支持。”,但是这是我一直使用的方法,直到ef5 – user1565366
简单的谷歌搜索你的错误消息给了我[这](http://stackoverflow.com/questions/12938371/data-binding-directly-to-a-store-query-dbset-dbquery-dbsqlquery-is-not-suppo)。你看过它吗? – Jay