[英]C# Linq to SQL Query between 2 Dates nos getting results
我正在使用Textboxes,Comboboxes和DateTimePicker構建一個復雜的搜索查詢。
對於文本框和組合框,查詢工作正常,但是在兩個日期之間添加datetimepicker進行查詢時,我什么也沒得到...
將EF6與LINQ一起使用...
所以,我的類來存儲數據:
public class Projetos
{
public int ID { get; set; }
public string Conc { get; set; } //Combobox
public string Ent { get; set; } //Combobox
public string Def { get; set; } //Textbox
public DateTime DataR { get; set; }
}
第一個查詢並返回結果:
public IEnumerable<Proj> LoadProj()
{
var ctx = new JEntities();
var query = (from p in ctx.tblProjs.AsQueryable()
join c in ctx.tblConcs on p.ConcID equals c.ConcID
join e in ctx.tblEnts on p.EntID equals e.EntID
select new Proj
{
ID = p.ProjID,
Conc = c.NameConc,
Ent = e.NameEnt,
Def = p.DefP,
DataR = p.DataR
});
// The combination of these 3 controls works fine!
if (TxtDefP.TextLength > 0)
{
query = query.Where(s => s.DefP.Contains(TxtDefP.Text));
}
if(CmbCon.SelectedValue != null)
{
string SelectedValue = CmbConc.GetItemText(CmbConc.SelectedItem);
query = query.Where(s => s.Conc == SelectedValue);
}
if(CmbEnt.SelectedValue != null)
{
string SelectedValue = CmbEnt.GetItemText(CmbEnt.SelectedItem);
query = query.Where(s => s.Ent == SelectedValue);
}
//When filtering between these 2 dates, I get no results
if (DataRFrom.Checked && DataRTo.Checked)
{
DateTime begin = DataRFrom.Value.Date;
DateTime end = DataRTo.Value.Date;
query = query.Where(s => s.DataR > begin && s.DataR < end);
}
return query.ToList();
}
在SQL中,我有這樣的日期……也許SQL中的Date格式搞砸了所有這一切???
我的問題是,為什么在此日期范圍內的記錄在數據庫中,為什么在2018-06-01和2018-06-06之間無法得到任何結果?
謝謝。
日期屬性丟失:
query = query.Where(s => s.DataR.Date> begin && s.DataR.Date <end);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.