最新のベータ4.37.11では、FileVersionInfo.GetVersionを使用すると、「パスが正当な形式ではありません」という例外がスローされます。
System.IO.Path.NormalizePath(String path、Boolean fullCheck、Int32 maxPathLength)at System.IO.Path.GetFullPathInternal(String path)
at System.IO.Path.GetFullPath(String path)at System.Diagnostics.FileVersionInfo.GetFullPathWithAssert (String fileName)at System.Diagnostics.FileVersionInfo.GetVersionInfo(String fileName)
具体的には、これは、呼び出しようとするMvcMiniProfiler.ProfiledDbConnectionを使用しようとしたときに発生します。
Version = FileVersionInfo.GetVersionInfo(typeof(MiniProfiler.Settings).Assembly.Location).ProductVersion;
静的Settings()ctorで。
これは、LINQPadの4.31ビルドを使用する場合に正常に機能します。ベータ版では、アセンブリのLocationプロパティは ""のように見えますが、4.31ではファイルへの適切なパスを返します。
これを機能させるためのアイデアや回避策はありますか?私のスクリプトには、私が慣れ親しんできた新しいベータ版のいくつかの機能があり、まだそれらをあきらめることを本当に楽しみにしていません。
また、この「マニフェストを含むロードされたファイルの場所。ロードされたファイルがシャドウコピーされた場合、場所はシャドウコピーされた後のファイルの場所です。アセンブリがバイト配列からロードされた場合。 Load(Byte [])メソッドを使用すると、Locationは空の文字列( "")です。 "
LINQPad Betaがアセンブリのロード方法を変更したかどうか疑問に思いますか?