C# 从实体中的上下文分离对象
我目前正在使用实体框架,遇到了以下问题: 无法定义这两个对象之间的关系,因为它们附加到不同的C# 从实体中的上下文分离对象,c#,asp.net,entity-framework,C#,Asp.net,Entity Framework,我目前正在使用实体框架,遇到了以下问题: 无法定义这两个对象之间的关系,因为它们附加到不同的ObjectContext对象 对于页面加载序列,我通过以下方式填写dropdownlists: using (DatabaseEntities db = new DatabaseEntities()) { MyDictionary = new Dictionary<Guid, Person>(); var List= from
ObjectContext
对象
对于页面加载序列,我通过以下方式填写dropdownlists
:
using (DatabaseEntities db = new DatabaseEntities())
{
MyDictionary = new Dictionary<Guid, Person>();
var List= from emp in db.Set select emp;
...
foreach (Employee emp in List)
{
MyDictionary.Add(emp.id, emp);
我正在此处以会话状态存储字典
public Dictionary<Guid,Person> MyDictionary
{
get
{
return Session["MyDictionary"] as Dictionary<Guid,Person>;
}
set
{
Session["MyDictionary"] = value;
}
}
在
MyDictionary.Add(emp.id, emp);
但它不起作用 不用在会话中存储整个实体,只需使用ID并在下一页检索它即可。拥抱网络的无状态有助于你保持理智
如果必须存储整个实体,请保留分离,但在启动新操作时,请记住将其附加到新的ObjectContext。我没有分离此实体要添加到的其他实体,因此我得到了冲突的上下文
db.Detach(emp)
MyDictionary.Add(emp.id, emp);