【发布时间】:2017-10-11 08:58:11
【问题描述】:
我首先使用 Entityframework 6 数据库。正在构建的应用程序将允许用户更改连接字符串。在我测试了新输入的连接字符串的有效性之后,我想检查 edmx 模型上的表是否真的存在于给定的连接字符串上。
所以我尝试了这个:
假设我在 edmx 上有 ExampleEntity.. 来检查它是否存在于我使用的真实数据库表中..
try{
dbContext.ExampleEntity.ToList();
return true; // the table exist
}
catch{
return false;
}
有没有更好的方法来使用 Entityframework 检查数据库表是否存在?
【问题讨论】:
-
如果表存在,你怎么知道它有预期的列?
-
@Gert 我认为模型属性是表列的反映。实体框架将表列与模型属性映射。我错过了什么吗?
-
是的,但是如果更改了数据库而不更改表名或添加/删除表怎么办?
-
可以使用Count()方法判断是否存在,否则返回true。
标签: c# entity-framework