Azureテーブルストレージにいくつかのレコードが保存されています。私は、現在ログインしているユーザーのために、特定の日/日付だけテーブルからレコードを取得しようとしています。LINQ Azureテーブルサービスに対するクエリが失敗します
私のクエリは何も返さないので、今月のレコードが3つあることはわかっていますが、私のリストは空です。
この場合、クエリが失敗する理由はわかりません。特定のユーザーの特定の日付のレコードを取得するにはどうすればよいですか?どんな助け?
これは私がこれまで試したものです:
public async Task<Result<List<Alert>>> FetchAlertsForDate (DateTime date)
{
try {
var fromDate = new DateTime(date.Year,date.Month,date.Day,0,0,0); //lets create a 12:00:00 AM date
var toDate = new DateTime(date.Year,date.Month,date.Day,23,59,59); //lets create a 23:59:59PM date
var alertTable=client.GetSyncTable<Alert>();
var alerts = await alertTable.Where(n=>n.AccountId==client.CurrentUser.UserId).Where(n=> n.StartDate >= fromDate && n.StartDate <= toDate).ToListAsync();
return Result<List<Alert>>.Success(alerts);
} catch (Exception ex) {
return Result<List<Alert>>.Failure (ex.Message + ex.StackTrace);
}
}
'client.CurrentUser.UserId'の値をデバッグしようとしましたか? – user3185569
@ user3185569はい、あります。値は正しいです。 2番目のWhere句を取り出し、このユーザーのすべてのアラートを取得すると、すべてのアラートがテーブルに戻されます。 – naffie