2

C:\Windows\assembly\ に存在し、Microsoft.VisualStudio.TextTemplating (バージョン 9.0.0.0) というアセンブリを読み込もうとしています。

これは、私が使用しているPowerShell 2.0のコマンドです

$inputfile = 'Hello.tt'
[Reflection.Assembly]::LoadWithPartialName("Microsoft.VisualStudio.TextTemplating") | 
   Out-Null

$server = New-Object ("Microsoft.VisualStudio.TextTemplating") $inputfile

私が得るエラーは default.ps1:Cannot find type [Microsoft.VisualStudio.TextTemplating] で、型を含むアセンブリが読み込まれていることを確認してください。

編集:キャッシュに登録されているSmoのような他のMicrosoftアセンブリをロードするために同じ方法を使用しているため、このアセンブリに別の問題があるのではないかと思います

前もって感謝します

4

1 に答える 1

3

ここでの問題は、アセンブリの負荷ではないようです。LoadWithPartialNameメソッドが問題のアセンブリをロードする ことを確認しました。

問題は、New-Object呼び出しに型ではなく名前空間が渡されることです。Microsoft.VisualStudio.TextTemplating代わりに、名前空間 内で型名を渡す必要があります。

于 2012-04-17T14:07:56.917 に答える