2016-05-26 11 views
0

ASP.NET RC1(DNX)上のWebアプリケーションをIISに展開しようとしています。私はすべてのMicrosoftのドキュメントを読んだが、問題は解決していない。アプリケーションを起動するときにこのエラーが発生します。DNX(ASP.NET Core RC1)Webアプリケーション - IISでホストできません。

Application startup exception: System.IO.FileLoadException: Could not load file or assembly 'Web' or one of its dependencies. General Exception (Exception from HRESULT: 0x80131500) 
File name: 'Web' ---> Microsoft.Dnx.Compilation.CSharp.RoslynCompilationException: Startup.cs(104,39): DNX,Version=v4.5.1 error CS0012: The type 'Func<,>' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 

これはどういう意味ですか?ローカルマシン上のIISに展開して、問題なく開発を実行できました。しかし、IISを搭載したサーバだけが動作しません。

このエラーを解決するにはどうすればよいですか?サーバーがWindows Server 2008 R2にあり、ローカルマシンがWindows 7であればそれが役に立ちます。

+0

サーバーにDNVMがインストールされており、正しいdnxランタイムがありますか? – Tseng

+0

@Tseng私は信じていません、どうすれば確認できますか?私はdnxランタイムを持っています。 – painiyff

答えて

0

回避策を使用してこの問題を解決できました。 Visual Studio 2015のコマンドを発行すると問題があるようです。 Nugetパッケージに公開するオプションがないようです。これは、publishコマンドがソースファイルを出力することを意味します。したがって、ファイルはまだサーバーによってコンパイルされる必要があります。

サーバーがファイルを正しくコンパイルする方法を見つけられませんでした。しかし、コードをNugetパッケージにコンパイルするだけで解決できました。これは、dnuコマンドラインツールを使用して行うことができます。

dnu publish --out %folder% --no-source --include-symbols --runtime dnx-clr-win-x86.1.0.0-rc1-update1 --configuration Release 

重要な部分はNugetパッケージにパッケージ化されます--no-sourceオプションです。

関連する問題