C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.96308 の関連記事表示

<< 0 >>
■96308  Re[1]: 本番環境にコードファーストで作成したDBの変更
□投稿者/ WebSurfer -(2020/11/10(Tue) 15:55:46)
    No96305 (Saipon さん) に返信

    > WindowsServer2019上のIISにWEBサイトを設置しアクセスしたところ、コードファーストの為、
    > SQLServerにもDBが作成されました。ここまでは良いのですが、

    ホントにそれで良いのでしょうか?

    そうだとすると IIS のワーカープロセスのアカウントに SQL Server のテーブルの Create と
    か Drop などを行う権限を与えたということだと思いますが、それは権限の与えすぎでは?

    > 例えばこの環境で実際に本番運用をした場合、DBへのフィールド追加や桁数変更等の修正は
    > DBに手動で直接行うものなのでしょうか?

    本番環境での DB の変更・修正はないというのが前提だと自分は思うのですが?

    そもそも EF Code First は、開発時に、本番環境で変更は必要ない状態まで作り上げるために、
    何度もの DB の変更・修正が DB に手を加えなくてもコードの変更・修正で可能にするための
    開発用の機能という位置づけのはずなのですが・・・

    > 当然ソースのモデル(POCO?)を修正することになると思いますが、モデルを修正しWEB発行
    > しサーバーにファイルしてサイトにアクセスすると、DBが再作成されデータが消えてしまう
    > ようなのです。それに対してデータの再投入をするのがベストプラクティスなのでしょうか?
    > 例えばモデルが変わってもDBを再作成せずに、手動でDB変更して運用するのが普通な気がし
    > ています。

    上にも書きましたが、それは開発時に限る話で、運用環境でそういうことはないところまで EF
    Code First の機能を利用して作り上げるという話になると思います。

    とは言え、運用状況で変更が絶対ないということもないでしょうから、そうなったら「手動でDB
    変更」というのが選択肢になると思いますが。

    > 新規のWEBアプリなのでコードファーストで試していますが、現状、モデルの変更の都度データ
    > を再投入しており、いまいちメリットを理解できておりません。

    データベースを自動的に削除して再作成するように設定してませんか? それを避けるために
    Migration 機能というのがありますが。使ってますか?

    そのあたりをご存じなければ、以下のチュートリアルの最初から「Code First Migrations と展開」
    のところまでやってみてはいかがですか。

    MVC 5 を使用する Entity Framework 6 Code First の概要
    https://docs.microsoft.com/ja-jp/aspnet/mvc/overview/getting-started/getting-started-with-ef-using-mvc/
記事No.96305 のレス /過去ログ167より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -