如何在此XML文件中设置日期/DateTime格式



我在linq语句中使用以下XML文件,其中我与DateTime值匹配" StartDate"one_answers" endDate"。并获得错误,因为"字符串"one_answers" dateTime"比较。我应该在这里做什么才能在xml中修改?

<?xml version="1.0" encoding="utf-8" ?>
<IndiaLoanProduct xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Program>
<ProgramID>6</ProgramID>
<Name>Primary Loan</Name>
<InterestRate>0.23</InterestRate>
<StartDate>2018-12-20</StartDate>
<EndDate>2019-03-31</EndDate>
</Program>
<Program>
<ProgramID>6</ProgramID>
<Name>Primary Loan</Name>
<InterestRate>0.25</InterestRate>
<StartDate>2019-04-1</StartDate>
<EndDate>2099-12-31</EndDate>
</Program>
</IndiaLoanProduct>

获得错误的代码: -

XDocument doc = XDocument.Load(Server.MapPath("/Resources/India_LoanProduct.xml"));
var ns = doc.Root.GetDefaultNamespace();
var result = (from program1 in doc.Descendants(ns + "Program")
              where Convert.ToInt32(program1.Element(ns + "ProgramID").Value) == programName.Id 
                 && (Comparedate < (DateTime)(program1.Element(ns + "EndDate")).Value) 
              select program1).FirstOrDefault();

基于OP的代码

更新了

您需要使用dateTime.parse。

解析元素值
var result = (from program1 in doc.Descendants(ns + "Program")
              where Convert.ToInt32(program1.Element(ns + "ProgramID").Value) == programName.Id 
                  && (Comparedate < (DateTime.Parse(program1.Element(ns + "EndDate").Value))) 
                  select program1).FirstOrDefault();

最新更新