私のasp.net mvc4アプリケーションでは、管理者がサイトのタイトル、注目の映画、カテゴリ、配色など、さまざまなサイト全体を変更できるようにしています.
これらの変更を保存するにはどうすればよいですか? 各設定を列としてデータベースに行を作成する必要がありますか?
その場合、サイトを表示するたびに、もちろんサイトのタイトルが必要になります。タイトルを取得するために毎回データベースにクエリを実行する必要がありますか?
私のasp.net mvc4アプリケーションでは、管理者がサイトのタイトル、注目の映画、カテゴリ、配色など、さまざまなサイト全体を変更できるようにしています.
これらの変更を保存するにはどうすればよいですか? 各設定を列としてデータベースに行を作成する必要がありますか?
その場合、サイトを表示するたびに、もちろんサイトのタイトルが必要になります。タイトルを取得するために毎回データベースにクエリを実行する必要がありますか?
あなたが提案したように、これを行う2つの可能な方法は、セッションまたはデータベースです。
セッション: この情報を永久に保存しない場合は、サーバー側でセッションに保存できます。設定したポリシーによっては、ユーザーがブラウザを終了した後に情報が消えてしまいますが、これはおそらくあなたが望むものではありません。
データベース: すべての情報をユーザー (userId、設定) ごとに 1 つの行に格納できます。設定は xml として保存できるため、次のような単一の文字列として保存できます。
<settings>
<title>...</title>
<featuredmovies>
<movie>...</movie>
</featuredmovies>
...
</settings>
データベースにクエリを実行する必要がありますが、ユーザー ID に基づいて選択するだけなので、非常に安価なクエリです。一度取得した情報をセッションに保存し、ユーザーが設定を変更したときにのみ更新することもできます。これは、設定情報が必要になるたびに、非常に迅速なデータベースではなくセッションから取得できることを意味します。
編集:次に、xml を目的の設定サーバー側に解析します。