0

各ユーザーには関数 (学生、開発者、アクターなど) があるため、ユーザーの各ユーザーには関数の外部キーである int 属性があり、各関数には各カルチャに複数の名前があるため、関数には int 属性がありました。 Functions_Translations の外部キー。これには、各カルチャの関数の名前があります。

私のコントローラーで:

        Users user = new Users();
        using (var db = new MyAppContext())
        {
            user = db.Users.FirstOrDefault(u => u.Mail == "tester@test.test");
        }
        return View(user );

私からしてみれば :

@model Models.Users
...
@Model.Functions.Functions_Translations.Select( x => x.FunctionId == Model.FunctionId  & x.CultureId == 1).First()... (don't know how do show the attribute Name in Functions_Translations )

2 つの質問があります。Functions_Translation で Name 属性を表示する方法と、2 番目で最も重要な質問です。

ビューで次のエラーが表示されます: ObjectContext インスタンスが破棄されたため、接続を必要とする操作には使用できなくなりました。

私は次のような解決策をたくさん見ました:

make user var and do return view(user.tolist())

しかし、それは私の見解では foreach を行うことを強制します。別の解決策はありますか?

私の英語で申し訳ありませんが、ありがとう

4

1 に答える 1

0

以下を設定して、一度お試しください。

db.ContextOptions.LazyLoadingEnabled= false;

この行をusingブロック内の最初の行として使用し、残りの操作を行います。最初の質問については、モデルのプロパティを提供して明確にし、Functions_Translations何を達成しようとしているのかを説明してください。

于 2013-05-26T17:27:10.350 に答える