1

是的,context.Accounts.Find(id) 其中 id 是主键,它确实给我带来了正确的帐户。但我想从 context.Accounts 中搜索字符串用户名,而不是主键。

更准确地说,方法:

public void Authenticate(string username, password)
{       result = false;
        Accounts test = new Accounts();
        test.User = username;
        Accounts dbEntry = new Accounts();
        dbEntry = context.Accounts_.Find(test.User);

        if (dbEntry.Password == password)
            if(dbEntry.Admin == 1)
              result = true;
        return result;
    }

所以用户名不再是主键,我如何在没有 Find() 功能的情况下找到正确的用户名?

4

1 回答 1

4

代替

    Accounts test = new Accounts();
    test.User = username;
    Accounts dbEntry = new Accounts();
    dbEntry = context.Accounts_.Find(test.User); 

var dbEntry = context.Accounts_.FirstOrDefault(acc => acc.username == username);

或在您的帐户中调用的任何“用户名”_

于 2013-07-16T17:12:06.823 回答