3003是确切版本(我认为)。我有以下代码(使用ActiveRecord)创建2个新实体,删除任何具有相同“Stamp1”和“Stamp2”值的实体,然后我想在我的List<MyEntity>
中插入所有内容。
我无法判断代码是否对删除有效,我不知道如何将列表中的所有新内容插入到批处理中。使用v2.x我使用了“SaveAll”,但我不明白3中的等效功能。
List<MyEntity> EntsList = new List<MyEntity>();
MyEntity myEntA = new MyEntity();
myEntA.Stamp1 = Convert.ToDateTime("1/1/1989");
myEntA.Stamp2 = Convert.ToDateTime("1/1/1990");
EntsList.Add(myEntA);
MyEntity myEntB = new MyEntity();
myEntB.Stamp1 = Convert.ToDateTime("1/1/1989");
myEntB.Stamp2 = Convert.ToDateTime("1/1/1990");
EntsList.Add(myEntB);
for(int d = 0; d < EntsList.Count; d++)
{
MyEntity delEnt =
MyEntity.SingleOrDefault (x => x.Stamp1 == EntsList[0].Stamp1 && x.Stamp2 == EntsList[0].Stamp2);
delEnt.Delete();
}
for(int d = 0; d < EntsList.Count; d++)
{
// How do I insert everything sequentially or all in one batch?
}
答案 0 :(得分:2)
您可以使用存储库的Add方法添加IEnumerable对象集合,这将在一个BatchQuery中添加所有对象。所以你应该能够做到这样的事情:
SubSonicRepository<MyEnitity> repo = new SubSonicRepository<MyEntity>(new MyDB());
repo.Add(EntList);