私はこれをEF 4.3で試しましたが、役に立ちませんでした。EF5 (.NET 4.5 と組み合わせて) は TVF をサポートするようになりました。したがって、理論的には、次のことが可能であれば、この新しい EF5 機能により、作業の負荷が大幅に軽減されます。
SQL クエリ;
SELECT O.*
FROM dbo.Orders O
INNER JOIN dbo.SecurityTVF(@Name) S ON S.UserID=O.UserID
同等の EF5 クエリ - 可能ですか?;
using (var context = new DSN())
{
// Return all the orders - limited by those the current user has placed
var orders = from o in context.Orders
join s in context.SecurityTVF(HttpContext.Current.User.Identity.Name) on o.UserID equals s.UserID
select o;
}
上記のことが EF5 で可能になる場合を除き、この段階ですべてのソフトウェアをアップグレードするつもりはありません... 誰かまだこれを試しましたか?
注意: 公式ドキュメントは少し基本的なものです。http: //msdn.microsoft.com/en-us/data/hh859577.aspx
前もって感謝します!