2016-05-30 10 views
0

ここにシナリオがあります。 私は全く新しいAsp.Net DNX RC2 Finalプロジェクトを作成しました。また、私のソリューションに.Netクラスライブラリプロジェクトを追加しました(両方ともFX 4.6.1)。クラスライブラリプロジェクトはsrcフォルダにあります。参照。実行時に.NETアセンブリが見つかりません

次に、クラスライブラリへの参照を追加し、project.jsonファイルを変更した後にすべてのパッケージを正常に復元できます。

私は

namespace ClassLibrary1 
{ 
    public class Class1 
    { 
     public static string Foo() 
     { 
      return "Bar"; 
     } 
    } 
} 

私のクラスライブラリに簡単な関数fooを追加しましたし、最終的に私のホーム/インデックスビューで、私はトップ

<div> 
    @(ClassLibrary1.Class1.Foo()) 
</div> 

に次を追加した解決策がでコンパイルエラーはありません。 これまでのところ、とても良いと思うかもしれませんが、続けましょう。

私は解決策を実行すると、次のように示してあるし、:実行時に

enter image description here

、私のクラスライブラリは利用できません。

答えて

1

私は同様の状況に遭遇しました。私の場合は、Visual StudioでRazorEngine例外が発生しました.RazorEngineの例外は、少なくともクラスライブラリが参照として追加されていても、何が起こっているのかを示しています。私はそれが(私はより良い方法があると願っています)作業得ることができます

唯一の方法は、Startup.csで私ConfigureServicesメソッドに次のコードを追加しました:

services.Configure<RazorViewEngineOptions>(options => 
{ 
    var previous = options.CompilationCallback; 
    options.CompilationCallback = (context) => 
    { 
     previous?.Invoke(context); 
     context.Compilation = context.Compilation.AddReferences(MetadataReference.CreateFromFile(typeof(ClassLibrary1.Class1).Assembly.Location)); 
    }; 
}); 

私が得ました以下のWebサイトからのアイデア:

Callback on RazorViewEngineOptions

Configure RazorViewEngine

私はあなたの例が動作していることを確認しました私は上記のコードを追加します。

関連する問題