【发布时间】:2018-03-12 20:43:28
【问题描述】:
所以我在我的项目中设置了 SQL Server 和 EF。
MPSDBEntities mpsEntities = new MPSDBEntities();
当我进行保存更改时它工作正常。例如
mpsEntities.SaveChanges();
它更新了数据库(这是否意味着我的连接字符串是正确的?)
但是,每当我尝试从 EF 执行任何类型的加载数据/SQL 时,例如
var temp = mpsEntities.CARD_BY_CHECKTYPE.Where(x => (x.CHECK_TYPE == "AA2")).ToList();
它会抛出异常
无法加载指定的元数据资源。
这是我的连接字符串,我怀疑问题出在哪里:
<add name="MPSDBEntities"
connectionString="metadata=res://*/MPSDBModel.csdl|res://*/MPSDBModel.ssdl|res://*/MPSDBModel.msl;provider=System.Data.SqlClient;provider connection string="data source=PAE0DT-DDWB282\MPS2;initial catalog=MPS;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework""
providerName="System.Data.EntityClient" />
我浏览了以下帖子。他们没有解决我的问题。
System.Data.MetadataException: Unable to load the specified metadata resource
MetadataException: Unable to load the specified metadata resource
Entity Framework: Unable to load the specified metadata resource
Unable to load the specified metadata resource
有人知道问题出在哪里吗? 谢谢。
@petryuno1
这是我的DbContext,如果这是你要问的......
public partial class MPSDBEntities : DbContext
{
public MPSDBEntities() : base("name=MPSDBEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
public virtual DbSet<CARD_BY_CHECKTYPE> CARD_BY_CHECKTYPE { get; set; }
........
}
【问题讨论】:
-
你的 DbContext 是什么样的?
-
@petryuno1 查看我编辑的帖子。这些都是在我添加 ADO.NET 实体数据模型时自动生成的。
-
您的实体有 .edmx 文件?如果是这样,您可以在其上运行“从数据库更新模型”命令吗?
-
我点击了从数据库更新模型。然后单击完成?没有什么真正改变......同样的错误信息......
标签: c# entity-framework