2011-10-03 19 views
0

現在、1つのテーブルを持つデータベースを使用するアプリケーションがあります。私はテーブルに別の列を追加したい。この記事(http://www.asp.net/mvc/tutorials/getting-started-with-mvc3-part7-cs)によると、データベースを変更するには2つの方法があります。1. EFをドロップして再作成するまたは2. dbを明示的に変更する。残念なことに、彼らは最初の方法を使います。データベースの更新 - MVC3、Entity framework 4.1

私はチームと呼ばれるテーブルがある場合、2番目の方法を行う正しい/最も簡単な方法は何ですか?

私が持っている列はTeamID、TeamAbbreviation、TeamCity、TeamNameとTeamDisplayNameです。 TeamSmallLogoUrlを追加します。

答えて

0

2番目の方法を実行するには、DBを変更して列を追加してください。その後、VSでEDMXファイルを開き(ソリューションエクスプローラでダブルクリック)、コンテキストメニューから[Update Model from Database]を選択して開きます。 Finishをクリックします。それはあなたの追加された列を拾うでしょう。

0

あなたは、コードの最初の(したがって、EF-4.1タイトル)を使用していると仮定すると:あなたはまだ開発段階にあり、データベースには、重要なデータが存在しない場合はドロップ再作成方法を使用し、

を。 (これも最も簡単な方法です)。

データベースにデータがある場合は、手動でこれを行うだけです。プロパティとクラスの名前は、データベーススキーマと直接一致する必要があります。 (マッピングされていない場合は、EFはエラーをスローします)

+0

私のクラスがTeam.csの場合、次のようになります。 public class Team { public int TeamID {get;セット; } 公開ストリングTeamAbbreviation {get;セット; } 公開ストリングTeamCity {get;セット; } パブリック文字列TeamName {get;セット; } パブリック文字列TeamDisplayName {get;セット; } 公開ストリングTeamSmallLogoUrl {get;セット; } } VS 2010のサーバーエクスプローラで手動でテーブル列を追加してから、文字列データを挿入しました。私は、ソリューションを再構築し、それでもエラーが発生します:モデルバッキング...データベースが作成されて以来のコンテキストが変更されました... –

関連する問題