私は MVC を使用するのが初めてで、アプリケーションの最初の起動時にイニシャライザを使用してデータを DB に初期化しようとしています。Global.asax.cs にあるものは次のとおりです。
System.Data.Entity.Database.SetInitializer(new MyAppInitializer());
MyAppContext db = new MyAppContext();
db.Database.Initialize(true);
Web.config の接続文字列は次のとおりです。
<connectionStrings>
<add name="MyAppContext"
connectionString="data source= MyServer; Integrated Security=True; database=MyDatabase"
providerName="System.Data.SqlClient"/>
これは、MS SQL 2008 R2 を使用しています。私のイニシャライザは次のようになります。
public class MyAppInitializer : DropCreateDatabaseAlways<MyAppContext>
{
protected override void Seed(MyAppContext context)
{
var organizations = new List<Organizations>
{
new Organizations { OrgName = "AT", OrgPhone = 5093333433, OrgOfficeLocation = "ITB", OrgPointOfContact = "Tony", OrgIsActive = 1 },
new Organizations { OrgName = "Libraries", OrgPhone = 5093331122, OrgOfficeLocation = "Holland-Terrell", OrgPointOfContact = "Herald", OrgIsActive = 1 }
};
organizations.ForEach(s => context.Organizations.Add(s));
context.SaveChanges();
SQL Server Management Studio でサーバーとデータベースへの接続を閉じたことを確認しましたが、現在は誰も使用していないはずですが、複数のユーザーがこの DB にアクセスできます。DBでこのデータを初期化できるようにするにはどうすればよいですか? ありがとう!
編集:サーバー上にDBを作成しましたが、完全に空です(テーブル、プロシージャなどはありません)。これにより問題が発生しますか?