使用Linq To Sql保存对象图的最佳方法是什么?

时间:2012-07-22 23:40:58

标签: c# linq-to-sql

我有一个实体,其中包含许多关联实体,我正在尝试使用LinqToSql继续使用,来自NHibernate世界我曾经创建过这样的实体

// UI layer
var entity1 = new Entity1();

entity1.Entity2 = new Entity2 { Id =  long.Parse(dropdown.SelectedValue) };
entity1.Entity3 = new Entity3 { Id =  long.Parse(dropdown2.SelectedValue) };
...
entity1.List = GetEntities();
...

//DAO layer
public void Insert(Entity1 entity)
{
   dataContext.Entity1.InsertOnSubmit(entity);                                  
   dataContext.SubmitChanges();                                            
}               

当我在dbContext.SubmitChanges()图层中调用DAO方法时 LinqToSql尝试保留相关的类,它没有做,我知道要解决这个问题,我必须将这些实体附加到当前的dataContext

所以我的问题是你如何处理这样的情况以及使用LinqToSql来保持对象图的最佳方法是什么 :

  • 像上面的示例一样实现关联的类,然后将主题附加到datacontext

  • 或直接从数据库加载主题?

感谢您的帮助。

0 个答案:

没有答案