【发布时间】:2019-01-13 10:58:40
【问题描述】:
我正在使用实体框架,我像填充网格控件一样;
Models.dbContext ent = new Models.dbContext();
ent.Locations.Load();
gridControl1.DataSource = ent.Locations.Local.ToBindingList();
然后我正在尝试获取类似的表名;
DataTable dt = ((DataView)gridview1.DataSource).Table;
Messagebox.Show(dt.TableName);
它给了我错误:无法将类型为“System.Data.Entity.Internal.ObservableBackedBindingList`1[Models.Location]”的对象转换为类型“System.Data.DataView”。
为什么会这样?我的代码有什么问题?
【问题讨论】:
-
gridControl1.DataSource = ent.Locations.Local.ToBindingList();你设置了DataSourceTOBINGINGLIST 然后期望从DataSource得到DataView。 BindingList != 数据视图 -
现在我看到了,但这是我第一次使用BindingLists,在这种情况下如何获取TableName?
-
您可以将表名存储在
Tag属性或Table -
来自 BindingList - 不可能完成的任务。将表名存储在其他地方
-
所以,我必须了解更多关于列表的信息。非常感谢
标签: c# entity-framework devexpress devexpress-gridcontrol