(在线等)linqdatasource中怎么对date类型进行比较?为什么compareto()不能用
小弟在编程(一个新闻后台)的时候碰到一个问题,
就是要查询一下指定日期的新闻,我们用了LINQ TO SQL 操作数据库,用的控件是linqdatasource,但是在对数据库按时间查询时,却提示LINQ不能识别这个方法。
代码如下:
db = new CITDatabaseEntities();
DateTime result;
bool r;
int IDDL = Int32.Parse(ItemDropDownList.SelectedValue);
r=DateTime.TryParse(CXNewsTextBox.Text, out result);
if (r)
{
result = DateTime.Parse(CXNewsTextBox.Text).Date ;
ItemNewsRelations[] cxItemNR = db.ItemNewsRelations.Where(cxIN => cxIN.Item_Id == IDDL).ToArray();
if (cxItemNR.Length != 0)
{
LinqDataSource1.Where = "Item_Id ==" + cxItemNR[0].Item_Id.ToString() + "&& News.PublishDate.ToString().CompareTo(" + result.ToString() + ")>=0";
Label1.Visible = false;
}
else
{
Label1.Visible = true;
}
}
else
{
ItemNewsRelations[] cxItemNewsR = db.ItemNewsRelations.Where(cxINR => cxINR.Item_Id == IDDL && cxINR.News.Title == CXNewsTextBox.Text).ToArray(); //这一句为按时间查询CXNewsTextBox.Text中输入的为时间IddL为对应的栏目
if (cxItemNewsR.Length == 1)
{
LinqDataSource1.Where = "Item_Id ==" + cxItemNewsR[0].Item_Id.ToString() + "&& News_id==" + cxItemNewsR[0].News_id.ToString();
Label1.Visible = false;
}
else
{
Label1.Visible = true;
}
}
请问一下,是我的代码写错了,还是什么原因,如果要从数据库中查对应日期的条目,应该怎么查呢?