2016-09-15 17 views
3

.NET Framework 4.5に自分自身のdllを.NET Core Projectに追加しようとしましたが、できません。私もproject.jsonファイルで何かを変更しようとしますが、結果はありません。私はカスタムナゲットソースを作るようにも努めていますが、それは私にとってはうまくいかないのです。 誰でも正しい説明を知ることができますどのように私はこれを行うことができますか?import .Net Framework 4.5ライブラリin .Net Core MVC App

、以下を参照してください画面: import .net framework 4.5 dll to .NET core

+0

メッセージはまったく参照しません。 .NET Coreと.NET Framework 4.5は異なる*ターゲットプラットフォーム*です。あたかもライブラリであるかのように、一方を他方に「インポート」することはできません。それは、.NETコア自体でパッケージ化されているアセンブリ以外のアセンブリへの参照を追加することができないということです。ライブラリをNugetパッケージにパッケージ化してから、パッケージをプロジェクトに追加する必要があります –

+0

Dea.Html別の.NET Coreライブラリですか? –

答えて

1

更新

.NETコア2.0のように、これは今で行うことができます。https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-core-2-0/#reference-net-framework-libraries-from-net-standard


あなたは、.NET Frameworkの4.5を参照することはできません.NET Coreプロジェクトのアセンブリ、他の.NET Coreアセンブリのみ。

.NET Core 1を使用していても.NETの "フル"アセンブリを参照できるようにするには、.NETコアではなく.NET Frameworkを対象とするASP.NETアプリケーションを作成する必要があります。これを行うには、新しいプロジェクトの作成 - > Visual C# - > Web - > ASP.NETコアWebアプリケーション(.NET Framework)を選択します。

また、このように、完全な.NET Frameworkのを参照するために、あなたのproject.jsonファイルを変更することができます:あなたは、プラットフォーム固有のコードを書くと、プリコンパイラ・ディレクティブを使用して喜んでいる場合は、

"frameworks": { 
    "net461": { } 
} 

をも1つのアプリで複数のフレームワークをターゲットにすることができます。

これを行うには、netcoreapp1.0と一緒に既存アプリにnet461を追加するだけです。ただし、各フレームワークの依存関係を指定する必要があることに注意してください。

"frameworks": { 
    "netcoreapp1.0": { 
     "dependencies": { 
      "Microsoft.NETCore.App": { "type":"platform", "version": "1.0.0" } 
     }, 
     "imports": "dnxcore50" 
    } 
    "net461": { 
     "dependencies": {"MyNet45Assembly"} 
    } 
} 

をそして、あなたのコードで、あなたのアプリが実行されているプラ​​ットフォームの下で検出するために、事前にコンパイラディレクティブを使用する必要があります。だからあなたのproject.jsonファイルは次のようになります。例:

#if NET461 
using MyNet45Assembly.Types; 
#endif 

// ... 

#if NET461 
var v = new MyNet45AssemblyType(); 
#endif 
+0

メッセージには、別の.NET Coreアセンブリ参照をプロジェクトに追加する方法、まったく別の問題があります。 NuGetパッケージを作成せずにすぐにはできないもの –

関連する問題