LINQ для SQL MAX в том случае, если я новичок

Я новичок в LINQ, так как ожидалось, я столкнулся с трудностями. То, что я пытаюсь достичь, это это:

SELECT id, name, password
FROM users u
WHERE u.id = (SELECT MAX(u1.id) FROM users u1);

Мой LINQ:

var dbUsers = from u in context.Users
              where u.Id == (context.Users.Max(u1 => u1.Id))
              select u;

, но я всегда заканчиваю со следующим исключением:

Невозможно создать постоянное значение типа «BLA.USERS». Только примитивно Типы (такие как int32, string и guid ') поддерживаются в этом контекст.

Вот класс пользователей:

public class Users
    {
        [Key]
        public int Id { get; set; }
        public string Name { get; set; }
        public string Password { get; set; }
    }
}

Вот мой класс контекста:

 public class EFDbContext : DbContext
    {
        public DbSet<User> Users{ get; set; }
    }
5
задан Michael H. 2 September 2011 в 18:27
поделиться