2009-05-20 14 views
0

最初のCLRアセンブリ\ストアドプロシージャを作成しようとしています。 CSCを使用してコードをコンパイルし、SQLサーバーにアセンブリを追加しました。アセンブリが表示されますが、クラスは見付かりません。SQLアセンブリでクラスが見つかりません

C#コード

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Text.RegularExpressions; 
using Microsoft.SqlServer.Server; 


namespace TextFunctions 

public class RegularExpressions 
{ 
[Microsoft.SqlServer.Server.SqlFunction] 
public static string RegExReplace(string input, string pattern, string replacement) 
    { 

     Regex Reginstance = new Regex(pattern); 

     return Reginstance.Replace(input, replacement); 


    } 

}

ENDのC#コード

FUNCTIONのコードを作成

CREATE Function RegExReplace(@Input NVARCHAR(512),@Pattern NVARCHAR(127), @Replacement  NVARCHAR(512)) 
RETURNS NVARCHAR(512) EXTERNAL NAME RegEx.RegularExpressions.RegExReplace 

ERROR は、アセンブリ内の '正規表現' を入力し 'RegularExpressions' が見つかりませんでした。

1)私は何をしているのか見ていますか?

2)私は、アセンブリ内のクラスや関数を見ることができますSQL Serverでテーブルまたはビューはありますか?あなたのコードによると

答えて

1

は、あなたのRegularExpressionsクラスがTextFunctions名前空間にあるスニペット。

それを修正する必要がありTextFunctions.RegularExpressions.RegExReplaceを使用するようにT-SQLコードを変更します。

+1

助けてよろしく!私はあなたが言ったことをしましたが、関数を作成するためにsqlに入ったときにはまだ動作しませんでした。その後、名前空間の部分を削除して(必要ではありません)、dllを再コンパイルしました。すべてが今良いです。 –

+0

新しい回答を投稿し、質問に回答してください。 – Shimmy

関連する問題