SubSonic と Linq スタッフは初めてで、単一のレコードを取得する最短かつ最適な方法を見つけようとしています。
単一のレコードを取得するために、これよりも速く、より少ないコードで記述できる方法は他にあるでしょうか?
User user2 = DB.Select().From(User.Schema)
.Where(User.PasswordColumn).IsEqualTo(password)
.And(User.SINumberColumn).IsEqualTo(siNumber)
.ExecuteSingle<User>();
AntsProfiler ツールを使用してチェックしましたが、これには平均 29.12 ミリ秒の CPU 時間がかかります - 10 回の実行でテスト済み
これにはさらに時間がかかります
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.08ms の CPU 時間がかかり、さらに UserController は 66.86ms かかります。
助言がありますか?