私はファイルを「作成日時」と「終了日」にしていますので、jsonで変換していますので、jsonでその日付があります。 私の方法で私は日付と日付のような2つのパラメータを持って、私は日付とdate.soの間に私のファイルの特定の列データをカウントしたいどのように私たちはlinqを使用してそれをフェッチするコードを書くことができます。linqの日付を比較する方法C#
私は、文字列としてのDateTimeの比較は良い選択肢ではありません、それは文句を言わないあなたに正確な結果を与える、だから私はあなたがCreatedDate
とClosedDate
の種類を変更することをお勧めします...
public JsonResult StatusDerails(DateTime from,DateTime to)
{
string csvurl = WebConfigurationManager.AppSettings["csvfileurl"];
var lines = System.IO.File.ReadAllLines(csvurl).Skip(1);
List<Product> prdt = new List<Product>();
foreach (string line in lines)
{
Product c1 = new Product();
var split = line.Split(',');
c1.ID = Int32.Parse(split[0]);
c1.Area_Path = split[1];
c1.IterationPath = split[2];
c1.State = split[3];
c1.Reason = split[4];
c1.Priority = Int32.Parse(split[5]);
c1.Severity = split[6];
c1.Tags = split[7];
c1.Title = split[8];
c1.CreatedDate = split[9];
c1.CreatedBy = split[10];
c1.ResolvedDate = split[11];
c1.ResolvedBy = split[12];
c1.ClosedDate = split[13];
c1.AssignedTo = split[14];
prdt.Add(c1);
}
//var list = prdt.GroupBy(a=>a.AreaPath).Select(a=>new UIproduct() {
var productName = prdt.Select(a => a.Area_Path).Distinct();
List<StatusDetail> statusdetail = new List<StatusDetail>();
foreach (var Name in productName)
{
StatusDetail sd = new StatusDetail();
sd.CarryOver = prdt.Where(a => a.CreatedDate >= from.Date.ToString() && a.ClosedDate <= to.Date.ToShortDateString
}
return Json(statusdetail, JsonRequestBehavior.AllowGet);
}
:csvを手で解析しないでください。正確に行うには良いライブラリがあります。私は個人的にはkbcsvが好きですが、それは多くのオプションの1つに過ぎません。 –