0

文字列を返すSQLServerにユーザー定義関数があります。これをプロパティとしてlinqtosqldbmlファイルのクラスに追加したいと思います。マイクラスは、SQLサーバーのビューを表します。(注:このUDFをビューに追加したくない)

プロパティを手動で作成してから、SQLサーバーでUDFの名前としてソースを割り当てようとしました。これとエラーが好きではありません。

私がしていることは可能ですか?ありがとう

4

1 に答える 1

2

クラスで定義されたクライアント メソッドをユーザー定義関数にマップするには、FunctionAttribute 属性を使用する必要があります。

ただし、プロパティを使用して関数をクラスにラップできます

CREATE FUNCTION Test(@string varchar(100))
RETURNS varchar(100)
AS
BEGIN
    RETURN "Test"
END

[Function(Name = "Test", IsComposable = true)]
[return: Parameter(DbType = "VarChar(100)")]

public string Test([Parameter(Name = "string",
    DbType = "VarChar(100)")] string @string)
{
    return ((string)(this.ExecuteMethodCall(this,
        ((MethodInfo)(MethodInfo.GetCurrentMethod())),
        @string).ReturnValue));
}
于 2012-08-22T16:51:21.457 に答える