0

学生、スタッフ、管理者の 3 種類のユーザーを使用して、ASP.NET MVC でアプリケーションを作成しています。

学生は、管理者が設定したプログラムを選択して申請できる必要があります。プログラムはタームで区切られています: 夏、秋、春は「ターム」と呼ばれるプログラム テーブルのデータベース フィールドに保存されます。

管理者が期間を設定できるようにしたいので、ユーザー(学生とスタッフ)がログインすると、その期間のみ利用可能なプログラムのみを表示できます。問題は、データベースに StaffProfile (管理者とスタッフのユーザー名とパスワードを取得する) や Programs (各プログラムの情報を含む) などのテーブルがあり、用語のみの新しいテーブルがあるため、データベースに保存できないことです。理想的なソリューションになります。

グローバルにアクセスでき、アプリケーションの終了時に破棄されないように、用語変数をどこかに保存したいと考えています。

たぶん、これには私が見ることができない簡単な解決策があります.ApplicationStateを検討しましたが、これが正しい方法かどうかはわかりません. どんなアイデアでも大歓迎です。

4

1 に答える 1

0

あなたの質問に対する私の理解によると。グローバル変数は、web.config または global.asax ファイルに格納できます。セッションを使用することもできます。静的クラスを静的に宣言することにより、別のオプションがあります。お気に入り

public static class GlobalVariables
{
    // readonly variable
    public static string Foo
    {
        get
        {
            return "foo";
        }
    }

    // read-write variable
    public static string Bar
    {
        get
        {
            return HttpContext.Current.Application["Bar"] as string;
        }
        set
        {
            HttpContext.Current.Application["Bar"] = value;
        }
    }
}

私が間違っている場合は修正してください。

于 2013-04-14T14:19:35.903 に答える