1

C# でこのコードを使用して、タイプ Member のエンティティを選択しようとしています。私はビデオチュートリアルを見ていましたが、彼らはまったく同じことをしていますが、私にはうまくいきません.

        Member member = new Member();
        var query =  from m in db.Members  where Member.MemberID == textBox1.Text 
        select m;     
        var currentMember =  query.FirstOrDefault();
        string CurrentID = M.MemberID;    

例外やものはありませんが、currentMember のプロパティはすべて null です。期待される結果を得るためのアイデアはありますか?

4

2 に答える 2

1

ここで変数を少し混同している可能性があると思います。このコードをクリーンアップしてみましょう:

var memberQuery = from m in db.Members
                  where m.MemberID == textBox1.Text
                     // ^ you need to reference the MemberID by the query
                     //   variable (m) not the class name (Member).
                  select m;

var member = memberQuery.SingleOrDefault();
                      // ^ when you only expect zero or one records from the
                      //   database, use SingleOrDefault instead of
                      //   FirstOrDefault, because it will throw an exception
                      //   when more than one record is returned.

if (member != null)
 // ^ always check to make sure that the database returned a value before trying
 //   to access any fields on the object.
{
    string currentId = member.MemberID;
}
else
{
    // a member with the given ID doesn't exist in the database
}
于 2013-01-12T22:18:10.067 に答える
0

問題はwhere Member.MemberID == textBox1.Text

だったはずwhere m.MemberID == textBox1.Text

なぜメンバーを作るのですか?Member member = new Member();

クエリからメンバーを取得し、ID を取得するだけです。

于 2013-01-12T22:21:00.657 に答える