3

.NET CLR を使用してストアド プロシージャを作成しようとしています。次のコードを .NET 3.5 DLL に正常にコンパイルしました。

Imports System.Math
Imports System.Text.RegularExpressions
Imports Microsoft.SqlServer.Server

Partial Public Class LevenshteinerAndSoundexer

    <SqlProcedure()> _
    Public Shared Function getLevenshteinDistance(ByVal string1 As String, ByVal String2 As String) As Integer

次に、次のコードを使用してアセンブリとして正常に追加しました。

create assembly
LevenshteinLibrary
from 'Path\LevenshteinLibrary.dll'

しかし、このコードでプロシージャを作成する必要があるとき

create procedure testCLR(@s1 nvarchar(1000), @s2 nvarchar(1000))
as external NAME LevenshteinLibrary.LevenshteinerAndSoundexer.getLevenshteinDistance

エラーが発生します

「アセンブリ 'LevenshteinLibrary' にタイプ 'LevenshteinLibrary' が見つかりませんでした」

関数を「見る」ことができないのはなぜですか?

ILSpy で DLL を調べると、次のようになります。

ここに画像の説明を入力

ライブラリを展開するとこんな感じ

ここに画像の説明を入力

4

1 に答える 1