2016-11-04 10 views
2

私は、Entity Framework 6.1.3でService Fabricを使用しています。私は、開始プロジェクトはサービスファブリックアプリケーション(そうなしweb.configファイルが、あるため、EFは、接続文字列を見つけることができないと仮定しサービスファブリックとEntity Frameworkの移行

Exception calling "SetData" with "2" argument(s): "Type 'Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.Automation.OAProject' in assembly 
'Microsoft.VisualStudio.ProjectSystem.VS.Implementation, Version=14.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' is not marked as serializable." 
At C:\repos\Gsa.Pops.Bookings\packages\EntityFramework.6.1.3\tools\EntityFramework.psm1:720 char:5 
+  $domain.SetData('startUpProject', $startUpProject) 
+  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : NotSpecified: (:) [], MethodInvocationException 
    + FullyQualifiedErrorId : SerializationException 

System.NullReferenceException: Object reference not set to an instance of an object. 
    at System.Data.Entity.Migrations.Extensions.ProjectExtensions.GetProjectTypes(Project project, Int32 shellVersion) 
    at System.Data.Entity.Migrations.Extensions.ProjectExtensions.IsWebProject(Project project) 
    at System.Data.Entity.Migrations.MigrationsDomainCommand.GetFacade(String configurationTypeName, Boolean useContextWorkingDirectory) 
    at System.Data.Entity.Migrations.EnableMigrationsCommand.FindContextToEnable(String contextTypeName) 
    at System.Data.Entity.Migrations.EnableMigrationsCommand.<>c__DisplayClass2.<.ctor>b__0() 
    at System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command) 
Object reference not set to an instance of an object. 

:私は、マイグレーションを有効にしようとすると「-の移行を有効にする」私がエラーを持っていますApplicationManifest.xmlと複数の環境構成)

ヒント? ありがとう、 Alberto

+0

存在し、私があれば知らない> -StartUpProjectName <プロジェクト名が含まれます場合は、移行を有効にするには、次のコマンドを使用してくださいそれは動作しますが、移行を伴うプロジェクトをスタートアッププロジェクトとして設定しようとします。 – netchkin

+0

最後に私はネットチキンの提案通りにしました。私の "インフラストラクチャ"プロジェクト(dbcontextとマイグレーションを持つプロジェクト)はスタートアッププロジェクトです。唯一のバックドローは、このプロジェクトのapp.configに接続文字列を手動でコピーする必要があることです(接続文字列は、私が作業している環境によって異なります) – Alberto

答えて

0

AzureのKeyVaultに接続文字列を保存してから、そこからインフラストラクチャプロジェクトをプルすることができます。

1

有効-移行-EnableAutomaticMigrations -ProjectName <プロジェクト名は、移行フォルダは、接続文字列は>

関連する問題