2015-09-28 7 views
23

私はEF 7を含むすべてのベータ版を実行しています。 ASP.NET 5アプリケーションテンプレートプロジェクト。私project.jsonは、次のようになります。"予想されるロックファイルが存在しません。これを実行した直後に" dnu restore "を実行してください。

{ 
    "webroot": "wwwroot", 
    "userSecretsId": "aspnet5-XXX-409e9e37-b7bb-4185-b7aa-6dc336087524", 
    "version": "1.0.0-*", 

    "dependencies": { 
    "EntityFramework.Commands": "7.0.0-beta7", 
    "EntityFramework.SqlServer": "7.0.0-beta7", 
    "Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta7", 
    "Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta7", 
    "Microsoft.AspNet.Authentication.Google": "1.0.0-beta7", 
    "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta7", 
    "Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta7", 
    "Microsoft.AspNet.Diagnostics": "1.0.0-beta7", 
    "Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta7", 
    "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta7", 
    "Microsoft.AspNet.Mvc": "6.0.0-beta7", 
    "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta7", 
    "Microsoft.AspNet.Server.IIS": "1.0.0-beta7", 
    "Microsoft.AspNet.Server.WebListener": "1.0.0-beta7", 
    "Microsoft.AspNet.StaticFiles": "1.0.0-beta7", 
    "Microsoft.AspNet.Tooling.Razor": "1.0.0-beta7", 
    "Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta7", 
    "Microsoft.Framework.Configuration.Json": "1.0.0-beta7", 
    "Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta7", 
    "Microsoft.Framework.Logging": "1.0.0-beta7", 
    "Microsoft.Framework.Logging.Console": "1.0.0-beta7", 
    "Microsoft.Framework.Logging.Debug" : "1.0.0-beta7", 
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta7" 
    }, 

    "commands": { 
    "web": "Microsoft.AspNet.Hosting --config hosting.ini", 
    "ef": "EntityFramework.Commands" 
    }, 

    "frameworks": { 
    "dnx451": { }, 
    "dnxcore50": { } 
    }, 

    "exclude": [ 
    "wwwroot", 
    "node_modules", 
    "bower_components" 
    ], 

    "publishExclude": [ 
    "node_modules", 
    "bower_components", 
    "**.xproj", 
    "**.user", 
    "**.vspscc" 
    ], 

    "scripts": { 
    "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ] 
    } 
} 

は、オンライン検索を行うことが、私が欲しかったものを達成するために、私は次のコマンドを実行するために必要なように思われた:

dnx ef dbcontext scaffold "ConnectionString" EntityFramework.SqlServer 

私はので、やることができませんでした今、私は最終的に、コマンド「DNX」を実行するために取得することができます Using existing database with ASP.NET 5 and EF7 (beta 7)

が、私はこのようになります私たconnectionString、とそれを実行してみてくださいする場合:私は、ここで説明したように解決した問題があった

dnx ef dbcontext scaffold "Data Source=192.168.XX.XXX\devsql;Initial 
Catalog=Development;Integrated Security=False;User ID=system;Password=XXX;" 
EntityFramework.SqlServer 

それは私に次のエラーが得られます。

[ERROR] 
C:\XXX\XXX\src\XXX\project.lock.json(1,0): 
error: The expected lock file doesn't exist. Please run "dnu restore" 
to generate a new lock file. 

を考えると

[ERROR] dnx : System.InvalidOperationException: Failed to resolve the 
following dependencies for target framework 'DNXCore,Version=v5.0': 
[ERROR] En línea: 1 Carácter: 1 [ERROR] + dnx ef dbcontext scaffold 
"Data Source=192.168.XX.XXX\devsql;Initial Catalog=Dev ... [ERROR] + 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
[ERROR]  + CategoryInfo   : NotSpecified: 
(System.InvalidO...,Version=v5.0'::String) [], RemoteException [ERROR] 
+ FullyQualifiedErrorId : NativeCommandError [ERROR] [ERROR] EntityFramework.Commands 7.0.0-beta7 [ERROR] 
EntityFramework.SqlServer 7.0.0-beta7 [ERROR] 
Microsoft.AspNet.Authentication.Cookies 1.0.0 [ERROR] -beta7 [ERROR] 
Microsoft.AspNet.Authentication.Facebook 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Authentication.Google 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Authentication.MicrosoftAccount 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Authentication.Twitter 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Diagnostics 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Diagnostics.Entity 7.0.0-beta7 [ERROR] 
Microsoft.AspNet.Identity.EntityFramework 3.0.0-beta7 [ERROR] 
Microsoft.AspNet.Mvc 6.0.0-beta7 [ERROR] 
Microsoft.AspNet.Mvc.TagHelpers 6.0.0-beta7 [ERROR] 
Microsoft.AspNet.Server.IIS 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Server.WebListener 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.StaticFiles 1.0.0-beta7 [ERROR] 
Microsoft.AspNet.Tooling.Razor 1.0.0-beta7 [ERROR] 
Microsoft.Framework.Configuration.Abstractions 1.0.0-beta7 [ERROR] 
Microsoft.Framework.Configuration.Json 1.0.0-beta7 [ERROR] 
Microsoft.Framework.Configuration.UserSecrets 1.0.0-beta7 [ERROR] 
Microsoft.Framework.Logging 1.0.0-beta7 [ERROR] 
Microsoft.Framework.Logging.Console 1.0.0-beta7 [ERROR] 
Microsoft.Framework.Logging.Debug 1.0.0-beta7 [ERROR] 
Microsoft.VisualStudio.Web.BrowserLink.Loader 14.0.0-beta7 [ERROR] 
[ERROR] 
C:\XXX\XXX\src\XXX\project.lock.json(1,0): 
error: The expected lock file doesn't exist. Please run "dnu restore" 
to generate a new lock file. [ERROR] Current runtime target framework: 
'DNXCore,Version=v5.0 (dnxcore50)' [ERROR] Version:  
1.0.0-beta7-15532 [ERROR] Type:   CoreCLR [ERROR] Architecture: x64 [ERROR] OS Name:  Windows [ERROR] OS Version: 
6.1 [ERROR] [ERROR] at Microsoft.Dnx.Runtime.DefaultHost.GetEntryPoint(String 
applicationName) [ERROR] at 
Microsoft.Dnx.ApplicationHost.Program.ExecuteMain(DefaultHost host, 
String applicationName, String[] args) [ERROR] at 
Microsoft.Dnx.ApplicationHost.Program.Main(String[] args) [ERROR] --- 
End of stack trace from previous location where exception was thrown 
--- [ERROR] at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() [ERROR] 
at Microsoft.Dnx.Runtime.Common.EntryPointExecutor.Execute(Assembly 
assembly, String[] args, IServiceProvider serviceProvider) [ERROR] 
at Microsoft.Dnx.Host.Bootstrapper.RunAsync(List`1 args, 
IRuntimeEnvironment env, FrameworkName targetFramework) [ERROR] at 
Microsoft.Dnx.Host.RuntimeBootstrapper.ExecuteAsync(String[] args, 
FrameworkName targetFramework) [ERROR] at 
Microsoft.Dnx.Host.RuntimeBootstrapper.Execute(String[] args, 
FrameworkName targetFramework) [ERROR] 

私は成功しproject.lock.jsonを再現

PS C:\XXX\XXX> dnu restore 
Microsoft .NET Development Utility CoreCLR-x64-1.0.0-beta7-15532 

CACHE https://api.nuget.org/v3/index.json Restoring packages for 
C:\XXX\XXX\src\XXX\project.json CACHE 
https://api.nuget.org/v3-flatcontainer/system.threading.threadpool/index.json 
GET 
https://api.nuget.org/v3-flatcontainer/system.net.sockets/index.json 
OK 
https://api.nuget.org/v3-flatcontainer/system.net.sockets/index.json 
1117ms Writing lock file 
C:\XXX\XXX\src\XXX\project.lock.json Restore 
complete, 2071ms elapsed 

NuGet Config files used: 
    C:\Users\XXX\AppData\Roaming\NuGet\NuGet.Config 
    C:\XXX\XXX\NuGet.Config 

Feeds used: 
    https://api.nuget.org/v3-flatcontainer/ 

を実行しようとしたが、それは(タイムスタンプもこれを反映しているようです)。しかし、私の足場スクリプトを再度実行しようとすると、「期待されるロックファイルが存在しません」という部分を含む上記のエラーが表示され続けます。

何が問題なのでしょうか?

+0

あなたのプロジェクトのフォルダに引数なしで 'dnu restore'を実行するだけです。 –

答えて

37

私は同じ問題に直面し、そしてによってそれを修正: - 右 "参考文献" をクリック - "パッケージの復元" を選択

またはCtrl + Shilf + R

をそれが作成されます。 /アプリケーションが使用しているすべてのNuGetパッケージの完全なリストを含む "project.lock.json"ファイルを更新します。私の意見では、ソース管理に入れないでください

1

Windows Serverカーネル環境で現在実行されているアプリケーションでこのコマンドを実行している場合、Core 5.0は頻繁に動作しません。いくつかを読むことはできますが、特にIISでホストしている場合は作成できません。私はこの問題をたくさん持っていた、私はちょうどメインの依存関係にEntityFramework.Commandsをスキップし、また

"frameworks":{ 
    "dnx451":{ 
      "dependencies":{ 
       "EntityFramework.Commands":"7.0.0-beta7" 
      } 
     } 
    ,"dnxcore50"... 

までジャンプ、あなたがDNXを実行する準備ができて取得するときに確認して、

dnvm use latest -r clr -arch {your server kernel arch} x64|x86 を実行するように最高のを見つけました

コマンド用のcoreclrを呼び出さないようにしてください。

閉じるのVisual Studio 完全:(dbcontextを足場は、主に無害であるため)、これを試してみてください

+0

また、CoreCLR 50とSqlServerでは大したことはありませんでした。現在、頭痛を修正するために、dnx46でAPIを実行し、dnxcore50で自分のサイトアプリケーションを実行し、残りのデータ検索を使用した場合のパフォーマンスヒットを調べています。私はdnx46 btwを使用しています。なぜなら、高I/O APIで多くの助けになる非同期の例外が451がないからです。 –

4

を、それは問題を修正する必要があり、それが本番サーバー上で私のために持っています。

Visual Studioコマンドプロンプトウィンドウを開きます。

cd C:\XXX\XXX\src\XXX\ 

dnu restore 

dnx ef dbcontext scaffold "ConnectionString" EntityFramework.SqlServer 
1

同じ問題がありましたが、参照を削除して追加しようとしましたが失敗しました。 私はManageNugetPackageマネージャに行って、設定からプライベート内部ナゲットリソースを削除し、パッケージを復元しました。(これも古いproject.lockファイルを削除しました)

+0

気にしないプライベートなナゲットサーバーが失敗します。ありがとう。 https://github.com/aspnet/Home/issues/711 –

0

Visual Studioソリューションフォルダを作成した場合、このエラーはUNCパスで発生します。

多くの場合、UNCパスはバーチャルマシン上のWindows(Parallels for Macなど)を使用する際にドキュメントフォルダをマップするため、Visual Studioではデフォルトでこのソリューションを新しいソリューションに使用します。

問題を解決するには、Visual Studioのソリューションフォルダを仮想マシンのディスクドライブに移動してから、プロジェクトを再度開きます。

0

私はVS 2015でAspNetCore参照の復元の失敗と "ドットネットリストア"を指示するエラーメッセージの1つについて不満を抱いていました。最後の手順でドットネットの復元に失敗しました。しかし、

解決策は、Nugetパッケージマネージャの設定を使用して、ローカルのNugetパッケージフィードリファレンスを削除することでした。

関連する問題