Can someone tell me how I can do a DateTimeQuery with LINQ and compare the dates?
I tried it like this:
private readonly string PATH = Path.Combine(HostingEnvironment.ApplicationPhysicalPath, "weatherdata.xml");
public List<WeatherData> weatherData(DateTime date1, DateTime date2)
{
List<WeatherData> list = new List<WeatherData>();
if (date1 <= date2)
{
XElement xml = XElement.Load(PATH);
var query = from data in xml.Elements("measurment")
where DateTime.Compare(DateTime.Parse(data.Element("date").Value), date1) >= 0 && DateTime.Compare(DateTime.Parse(data.Element("date").Value), date2) <= 0 //DateTime.Parse(xml.Element("date").Value) >= date1 && DateTime.Parse(xml.Element("date").Value) <= date2
select data;
if (query.Any())
{
foreach (var w in query)
{
WeatherData tmp = new WeatherData();
tmp.Temperature = w.Element("temperature").Value;
tmp.Humidity = w.Element("humidity").Value;
list.Add(tmp);
}
}
else
{
WeatherData errorData = new WeatherData();
errorData.Error = "Its wrong.";
list.Add(errorData);
}
}
else
{
WeatherData error = new WeatherData();
error.Error = "No";
list.Add(error);
}
return list;
}
My Querry does not have any funcionality somehow and I don't know what to do...
