2016-06-27 8 views
1

私は.NETライブラリとSilverlight環境でシームレスに再利用できるように、コードをポータブルライブラリプロジェクトに格下げするC#プロジェクトを持っています。.Net Core RC2で標準的な移植可能ライブラリを使用する

PCLsターゲット.Net45およびSilverlight 5

今、.NETコア環境で同じPCLを使用したいと思います。可能であれば、私は.NetとSilverlight環境で私のソリューションを維持し、新しい.NETコアソリューションでPortableプロジェクトを再利用したいと考えています。

.Net Core Libraryからの通常のPCLプロジェクトへの参照を追加しようとすると、依存関係が読み取れません。私はPCLアセンブリへの参照を追加しようとすると

NU1001 The dependency could not be resolved.

私はエラーを取得する:

.NET Core projects only support referencing .NET framework assemblies in this release. To reference other assemblies, they need to be included in a NuGet package and reference that package.

は、.NET Core環境の定期的なのPCLを使用することが可能ですか?あるいは、新しい.Net Coreライブラリを作成する必要がありますか?

新しいプロジェクトを作成する必要がある場合、重複したコードを避けるにはどうすればよいですか?あなたが参照したいプロジェクトを閲覧

  • の参照を追加する

  • +1

    .NETコアプロジェクトでは、 'import'キーワードを使用してPCLを使用することができます([docs](https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platformを参照) -standard.md#portable-profiles))。これをテストする最も簡単な方法は、PCLライブラリのNugetパッケージを作成し、 'project.json'で参照することです。 –

    +0

    ありがとう@NateBarbettini、しかし、私はすでに同じPCLモニカをターゲットにしており、PCLプロジェクトの参照を許可していません。同じモニカをインポートするのは無意味ですね。 NuGetパッケージを作成すると、プロジェクト自体への参照が削除されます。 – pmoleri

    +0

    私は同じ問題があります。この[リンク](http://stackoverflow.com/questions/31900713/how-do-i-use-a-standard-class-library-in-mvc6)が役立ちます。 –

    答えて

    0
    1. 移動します。
    2. プロジェクト自体ではなく、プロジェクトの.dllを選択します。
    3. .dll参照を追加してビルドします。
    +0

    ありがとうございます。しかし、.NET Coreプロジェクトでこれを実行しようとすると、このリリースで.NET Frameworkプロジェクトの参照のみサポートしている記事のエラーが表示されます。 – pmoleri

    +0

    最初に.netコアでPCLプロジェクトを移行してから、.netコアプロジェクトで使用してください。 –

    +0

    はい、私はうまくいきますが、唯一の問題は、 'project.json'ではリソースファイルとファイルのリンク用のカスタムツールとして利用できないいくつかの機能が' .csproj'存在しないことです。 – pmoleri

    0

    お試しくださいlinkここでは、バージョン4.5.2のAPIを作成し、そのAPIを.netコアプロジェクトで呼び出すことができます。このAPIは、古いクラスライブラリと.netコアアプリケーションの橋渡しとして機能します。あなたのクラスライブラリのホスティングは分離されます。私はこれがあなたのケースでうまくいくと思います。

    関連する問題