c# - 如何在这个 xml 文件中设置日期/日期时间格式?
问题描述
我在 LINQ 语句中使用下面的 xml 文件,其中我将“Startdate”和“EndDate”与 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();
推荐阅读
- arrays - 维护具有随机访问的元素的排序列表
- javascript - 防止 react-snap 将所有 JS 脚本链接放入生成的文件中
- wordpress - 用于 wordpress 和 laravel 的 nginx 多个位置
- pgadmin-4 - 如何启用 pgAdmin (4.4) 菜单栏
- java - 将 Java 打印方法生成的文件保存到 MySql 数据库表
- python - 我想在单个替换函数中用空格替换多个字符串
- python - 尝试在 python 中正确实现 sum 和 clip list 操作
- java - 如何使用编程配置在springboot中的ehcache3中设置maxDepthExceededBehavior?
- c++ - C++ - 有深度的字符串
- python - 使用 filter_by 不能按预期工作