我收到錯誤實體類型RelyingParty不是當前上下文的模型的一部分,即使它存在。實體類型RelyingParty不是當前上下文的模型的一部分
我的edmx名稱是SSO。 edmx存在於實體文件夾中Entrada.DAL程序集。以下是SSO.Context類
namespace Entrada.DAL.Entities
{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
public partial class SSOEntities : DbContext
{
public SSOEntities()
: base("name=SSOEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
public virtual DbSet<KeyValuePair> KeyValuePairs { get; set; }
public virtual DbSet<RelyingParty> RelyingParties { get; set; }
}
下面的代碼是在web.config中
<add name="SSOEntities" connectionString="metadata=res://*/Entities.SSO.csdl|res://*/Entities.SSO.ssdl|res://*/Entities.SSO.msl;provider=System.Data.SqlClient;provider connection string="data source=dbname;initial catalog=SSO;persist security info=True;user id=user;password=******;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
連接字符串,這就是引發錯誤的代碼:
public List<RelyingPartyDALDTO> GetAllRelyingParty()
{
List<RelyingParty> relyingPartDB = DBContext.RelyingParties.ToList();
List<RelyingPartyDALDTO> relyingPartyList = RelyingPartyEntityToDAL.Map<List<RelyingPartyDALDTO>>(relyingPartDB);
return relyingPartyList;
}
的DbContext是:
public SSOEntities DBContext
{
get
{
if (SSOEntities == null)
{
SSOEntities = new SSOEntities();
}
return SSOEntities;
}
}
我在執行語句時出錯: List relyingPartDB = DBContext.RelyingParties.ToList(); Check the error here
你能在DBContext中看到錯誤嗎?已存在的表(KeyValuePair)不會引發任何錯誤,但新添加的表RelyingParty將引發該錯誤。
我不明白是什麼問題。對於我添加到edmx的任何新表,我都面臨着這個問題。
任何人都可以幫我嗎?
有人幫我請!!!!!!! –