2

BLToolkit ライブラリを使用して SQL プロシージャを Linq に変換中です。

今、私は小さな問題で立ち往生しているので、誰かがこれが可能であることを知っていれば、本当に助けていただければ幸いです.

とにかく、私はこのようなSQLクエリを持っています(注:これは私の実際のテーブル名ではありません。何が起こっているのか理解できるように翻訳しただけです)

select
     P.ProductsID,
     P.Name,
     P.Description,
     dbo.GetTax(P.TaxID, getdate()) -- this is what I need help with
from
     Products P

当日のすべての製品の税金を取得する必要があることを除けば、ここではそれほど派手なことはありません。

これをLinqに変換する必要がありますが、これが可能かどうかはわかりません。私はこのようなことを試しました

from p in Products
select new
{
    p.ProductsID,
    p.Name,
    p.Description,
    GetTax(p.TaxID, DateTime.Today) //this is what I need help with
}

そしてそれはうまくいきません。GetWork関数は、本質的に税金を返す別の linq クエリです。BLToolkit ライブラリを使用してスカラー関数を呼び出す方法がわかりません。

質問はこれです。Linqの選択されたステートメントからスカラー関数を呼び出すことは可能ですか?

4

1 に答える 1

4

次の関数をどこかに定義します。

[SqlFunction(ServerSideOnly=true)]
public static double GetTax(int id, DateTime dt)
{
    throw new NotImplementedException();
}

GetTax を SQL に変換するように BLToolkit に指示します。

于 2011-07-07T19:56:52.703 に答える