CLR 関数を作成したい。通常のクラス ライブラリ ファイルを作成し、以下のようにコーディングしました。いくつかのクラスが見つからないため、SqlServerProject を使用したくありません。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SqlServer.Server;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Types;
namespace ClassLibrary1
{
public partial class Class1
{
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlString GetPassword(SqlString Value)
{
return Value;
}
}
}
私はコードをコンパイルし、このようにsqlserverからアセンブリを作成しました
CREATE ASSEMBLY ASSEM
authorization dbo
FROM 'E:\NBM Sites\tvt.stage.asentechdev1.com\ClassLibrary1.dll' WITH PERMISSION_SET = SAFE;
そして、以下のような関数を作成しました
CREATE FUNCTION SampleFunc
(
@value nvarchar(max)
)
RETURNS nvarchar(max) with execute as caller
AS
External Name ASSEM.Class1.GetPassword
GO
しかし、上記の create 関数はエラーをスローしました。
Could not find Type 'Class1' in assembly 'ClassLibrary1'.
なぜclass1が認識されないのか、私も公開したのでわかりません。誰か助けてください。