2015-11-20 3 views
17

I「既存のプロジェクトにEF7のRC1をインストールしようとは:m問題RC1

PM> Install-Package EntityFramework.MicrosoftSqlServer –Pre

が、私は次のエラーを取得:の最後に

Install failed. Rolling back...
Package 'Microsoft.Extensions.Logging 1.0.0-rc1-final' does not exist in project 'XYZ'

とATをトレース私はこの他のメッセージを受け取る:

Install-Package : Failed to add reference to 'System.Collections.Concurrent'. Please make sure that it is in the Global Assembly Cache.

私はグーグルで、私は私の開発ボックスにそのようなアセンブリがありません。

更新:

gacutilでGACを照会した後、私は実際にアセンブリが存在することを実現:ここ

System.Collections.Concurrent, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL

+0

「私のdevboxにこのようなアセンブリはありませんでした」それはどういう意味ですか?あなたはどのようにチェックしますか? –

+0

@HamletHakobyanアセンブリへの参照を設定したい場合、アセンブリリストにそのアセンブリが存在しません。私はgacutilコマンドを使用しても、私はgacのアセンブリを見ることができません。 –

+0

@HamletHakobyan、私はガックを鎮圧しながらタイプミスをしました。はい、バージョン4.0があります。 –

答えて

8

このエラーが発生した後、他のプロジェクトへの参照を削除してプロジェクトにEF7 RC1をインストールできました。その後、必要なプロジェクトにEF7 RC1を正常にインストールした後、その後、ソリューションがコンパイルされ始めました(少なくとも基本的なEF機能が動作し始めました)。おそらくナゲット/ dnuの不具合。

+1

これも私の場合に行く方法でした。 –

+0

同じ問題ですが、他のNuGetパッケージ(StructureMap、Caliburn Micro、MahApps Metro、MaterialDesignInXaml、Dragablz、MediatR、FluentValidation)への参照を削除した後でしか機能しませんでした。 – mycroes

0

同じ問題:

グローバルアセンブリキャッシュには、次のアセンブリが含まれています。私はef7-beta8とその依存関係をアンインストールし、ef7を再インストールしました...問題は解決されました。アップデートロジックやナゲット自体にバグがあるようですが、確かに分かりません。

+0

Yankoありがとう、私の場合はこれは問題ではありません。私は以前に6.xを持っていて、正常にアンインストールされました。 –

+0

Ah ok :-)しかし、私はbeta8からrc1にアップグレードしたときに同じエラーメッセージ(手紙)を見たので、そこに何か問題があると思う。 –

0

回避策として、私は新しいプロジェクトを作成し、EF 7をインストールし、以前のソースファイルを手動で追加して機能させました。

3

私の場合はxunit nugetパッケージを削除しなければならなかった。これらの参照を削除すると、Microsoft.Extensions.Logging 1.0.0-rc1-finalが正しくインストールされます。その後、何の問題もなくxUnitを追加しました。

11

私はGACでないSystem.Collections.Concurrentアセンブリを有していないので、私はSystem.Collections.Concurrent NuGetパッケージをインストール:packages\System.Collections.Concurrent.4.0.10\lib\dotnet\System.Collections.Concurrent.dll

Install-Package System.Collections.Concurrent 

そして手動で追加基準(net46フォルダが空であるため)。

その後、EntityFramework.MicrosoftSqlServerのインストールはエラーなしで完了しました。

+2

私はまったく同じ問題を抱えていましたが、これが私の問題を解決しました。私の場合、受け入れられた答えは機能しませんでした。私はNugetパッケージ(OPと同じエラー)をインストールしない4.6 WPFプロジェクトを持っていました。興味深いことに、System.Collections.Concurrentには4.6 dllはありませんでした。そのため、このソリューションのように、代わりにdotnetフォルダのバージョンを使用する必要がありました。彼らはアセンブリの4.5/4.6バージョンを提供していないので、NuGetは私が思うに壊れています。 – Gustyn

1

これは面倒くさですが、インストールEntityFramework.Core -preを取得するため.Net v4.5.2私の回避策を使用すると、次のとおりです。

  1. がインストールされていないNuGetsときれいなクラスライブラリを作成します。
  2. install-package entityframework.core -pre
  3. コピーpackages.configが、の内容はEntityFramework.Core
  4. を表す線が含まれていません。あなたはそれをインストールしているpackages.configの行を含めます。
  5. update-package -reinstall -projectName YourProjectNameFromStep4
  6. install-package EntityFramework.Core -pre

NOTE!ステップ5はが失敗したした場合、あなたは何をすることができます:

  1. install-package System.Collections.Concurrent -version 4.0.0 -projectName YourProjectNameFromStep4
  2. install-package System.Runtime -version 4.0.0 -projectName YourProjectNameFromStep4

ステップ6からインストールが成功した後、これらを除去することができます。

  1. uninstall-package System.Collections.Concurrent -projectName YourProjectNameFromStep4
  2. uninstall-package System.Runtime -projectName YourProjectNameFromStep4

のVisual Studioを再起動した後、それは言うかもしれない「System.Collections.Concurrentを見つけることが、このためにあなたの目を閉じると、動作しているようですができません。

2

これを取得している場合(2016年4月現在)、これらの回答は古くなっている可能性があります。私が初めてEF7をインストールしますが、私が見つけたこのだったんだ:

  • 私が最初にこの考えEntityFramework.SqlServerをインストールし、私は
  • を必要とするほとんどの「トップレベル」パッケージには、私はEntityFramework.Commandsをインストールしようとなりました。愚かな 'コレクション'のエラーが表示された

バージョンをよく見ました。

  • のSQLServerは、ベータ8
  • コマンドだから私は、プロジェクトやアップデートの下に表示更新すべてのために「nugetパッケージ管理」に行ってきましたRC1

たまだありました。 私は実際にこれを2回行わなければなりませんでした。

これは、私は、問題なしEntityFramework.CommandsをインストールすることができましたRC1

までEF7コアのものをもたらしました。


しかし、これはあなたのやりたいことではありません。

Why? 彼らはあなたが実際に*.SqlServerをアンインストールし、何のRC1版がなかった理由を説明*.MicrosoftSqlServer

をインストールしたいEntityFramework.MicrosoftSqlServer

EntityFramework.SqlServerパッケージの名前を変更しているため。

関連する問題