BLToolkit обновление с присоединением - PullRequest
1 голос
/ 17 июля 2011

Кто-нибудь знает, как написать следующий код обновления, используя синтаксис BLToolkit, где мне нужно объединить две таблицы и обновить одну из них. В SQL Server это делается так:

update Table1 set
    Col1 = T.Col1 - TT.Col2
from
    @tempTable as TT
    inner join Table1 as T on **T.ColX = TT.ColX and T.ColY = TT.ColY**

Так я делал обновления до сих пор.

 db.SomeTable.Where( x => x.ColName == someColName )
                            .Update( x => new SomeTable
                            {
                                //update columns here
                            } );

1 Ответ

1 голос
/ 18 июля 2011

Пример из модульных тестов BLToolkit:

var q =
    from c in db.Child
    join p in db.Parent on c.ParentID equals p.ParentID
    where c.ChildID == id && c.Parent.Value1 == 1
    select new { c, p };

q.Update(db.Child, _ => new Child { ChildID = _.c.ChildID + 1, ParentID = _.p.ParentID });
...