我是 SubSonic 和 Linq Stuff 的新手,我正在尝试找出检索单个记录的最短和最佳方法。
还有什么其他方法比这更快并且需要更少的代码来获得一条记录?
User user2 = DB.Select().From(User.Schema)
.Where(User.PasswordColumn).IsEqualTo(password)
.And(User.SINumberColumn).IsEqualTo(siNumber)
.ExecuteSingle<User>();
我已经使用 AntsProfiler 工具进行检查,这需要平均 29.12 毫秒的 CPU 时间——经过十次运行测试
因为这需要更长的时间
UserController uc = new UserController();
Query query = new Query("User");
query.WHERE(User.Columns.Password, password);
query.WHERE(User.Columns.SINumber, siNumber);
User user = uc.FetchByQuery(query).First<User>();
仅最后一行需要 256.08 毫秒 CPU 时间加上 UserController 需要 66.86 毫秒。
有什么建议么?