C#用LINQ麻烦更新记录

Tom*_*len 0 c# linq

    public static bool CheckLogin(string Username, string Password, bool AutoLogin)
    {
        bool LoginSuccessful;

        // Trim inputs and verify lengths
        Username = Username.Trim();
        Password = Password.Trim().ToLower();

        // Get the associated user records
        DataClassesDataContext db = new DataClassesDataContext();
        var q = (from User in db.tblForumAuthors where User.Username == Username select new
                {
                    User.Password,
                    User.Salt,
                    User.Username,
                    User.Author_ID,
                    User.User_code,
                    User.Active,
                    User.Login_attempt,
                    User.Last_visit,
                }).SingleOrDefault();

        // Invalid details passed
        if (q == null)
        {
            LoginSuccessful = false;
        }
        else
        {
            // Increment login attempts counter
            int LoginAttempts = q.Login_attempt;
            LoginAttempts++;

            // Encrypt the password
            string HashedPassword = GetSha1(Password + q.Salt);

            // Check passwords match
            if (q.Password == HashedPassword)
            {
                LoginSuccessful = true;
            }
            else
            {
                LoginSuccessful = false;

                // Increment login attempts
                q.Login_attempt = LoginAttempts;
                db.SubmitChanges();
            }
        }
        return LoginSuccessful;
    }
}
Run Code Online (Sandbox Code Playgroud)

在线上

q.Login_attempt = LoginAttempts;
Run Code Online (Sandbox Code Playgroud)

我明白了:

Error 50 Property or indexer 'AnonymousType#1.Login_attempt' cannot be assigned to -- it is read only C:\inetpub\wwwroot\ScirraNew\App_Code\Login.cs 82 17 C:\...\ScirraNew\

有谁能告诉我如何在记录中更新此计数器?

jln*_*thy 5

如果要编辑它,则只需选择整个用户项.摆脱整个"选择新"条款.