エンティティ フレームワークを使用している場合、MS-SQL ストアド関数を LINQ 式で使用できるようにするにはどうすればよいですか?
SQL 関数はCREATE FUNCTION MyFunction(@name) ...
) で作成されました。私はこれと同様にアクセスしたいと思っていました:
var data = from c in entities.Users where MyFunction(c.name) = 3;
残念ながら、.NET 3.5 しか利用できません。
エンティティ フレームワークを使用している場合、MS-SQL ストアド関数を LINQ 式で使用できるようにするにはどうすればよいですか?
SQL 関数はCREATE FUNCTION MyFunction(@name) ...
) で作成されました。私はこれと同様にアクセスしたいと思っていました:
var data = from c in entities.Users where MyFunction(c.name) = 3;
残念ながら、.NET 3.5 しか利用できません。
実際にDB 関数を EF 1 にインポートできます。ただし、EF 1 には入らないためEdmFunctionAttribute
、それらを使用できるコンテキストに制限されます。そのためにはEF 4が必要です。
あなたのケースでは、procを返すマッピングを検討することをお勧めしますUsers
(3.5の場合、この機能には4の方が適しています)。