所以我在我的项目中设置了一个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; }
........
}
1 回答
这对我有用 .
从这改变:
改成:
然后添加其余的连接字符串 . 希望能帮助到你 .