dt
私は2つの列FromDate
を持つDataTableを持っていますToDate
. 日付blackOutFromDate
を入力するテキストボックスが 2 つあり、 blackOutToDate
. たとえば、 DataTable 内に 7 行ありますdt
。
From Date To Date
8/21/2012 To 8/22/2012
8/23/2012 To 8/24/2012
8/25/2012 To 8/25/2012
8/5/2012 To 8/6/2012
8/26/2012 To 8/27/2012
8/1/2012 To 8/2/2012
8/3/2012 To 8/3/2012
テキストボックス内に入力した値が DataTable の一致する日付範囲内にあるCheckInDate
場合、そのような一致を持つ行の数を返す必要があります。CheckOutDate
dt
私がやっている
foundRows = _blackOutTable.Select
(
"(FromDate <='" +
blackOutFromDate.ToShortDateString() + "' AND ToDate >= '" +
blackOutFromDate.ToShortDateString() + "')"
+ "OR (FromDate <='" +
blackOutToDate.ToShortDateString() + "' AND ToDate >='" +
blackOutToDate.ToShortDateString() + "')"
+ "OR (FromDate >='" +
blackOutFromDate.ToShortDateString() + "' AND FromDate <='" +
blackOutToDate.ToShortDateString() + "')"
+ "OR (ToDate >= '" +
blackOutFromDate.ToShortDateString() + "' AND ToDate <='" +
blackOutToDate.ToShortDateString() + "')"
);
if (foundRows.Length == 0)
{
}
EDIT:SQlサーバー内にファイルされたDateFromとDateToを次のように保存しています
CAST(MONTH(date1) AS VARCHAR(2)) + '/' + CAST(DAY(date1) AS VARCHAR(2)) + '/' +
CAST(YEAR(date1) AS VARCHAR(4)) [fromdate],
CAST(MONTH(date2) AS VARCHAR(2)) + '/' + CAST(DAY(date2) AS
VARCHAR(2)) + '/' + CAST(YEAR(date2) AS VARCHAR(4)) [todate]
blackOutFromDate と blackOutFromDate は DateTime タイプです。
しかし、正しい値が返されません。選択式に問題があります。これを修正するにはどうすればよいですか?