ASP.NET Community Starter Kit的一个bug
这段代码位于,
Engine/Modules/Events/Controls目录的DataPicker.cs文件里
找到Render()代码,下面给出了修改后的代码,供大家参考。
protected override void Render(HtmlTextWriter tw)
{
// Get Date Parts
string[] dateParts;
try
{
DateTimeFormatInfo objDateInfo = DateTimeFormatInfo.CurrentInfo;
dateParts = objDateInfo.ShortDatePattern.Split('/');
if (objDateInfo.ShortDatePattern.IndexOf("/")>0)
dateParts = objDateInfo.ShortDatePattern.Split('/');
else
dateParts = objDateInfo.ShortDatePattern.Split('-');
}
catch
{
dateParts = new string[]{"m","d","y"};
}
tw.RenderBeginTag(HtmlTextWriterTag.Table);
tw.RenderBeginTag(HtmlTextWriterTag.Tr);
tw.RenderBeginTag(HtmlTextWriterTag.Td);
RenderDatePart(dateParts[0],tw);
tw.RenderEndTag();
tw.RenderBeginTag(HtmlTextWriterTag.Td);
RenderDatePart(dateParts[1],tw);
tw.RenderEndTag();
tw.RenderBeginTag(HtmlTextWriterTag.Td);
RenderDatePart(dateParts[2],tw);
tw.RenderEndTag();
tw.RenderEndTag(); // close row
tw.RenderEndTag(); // close table
}
之所以有这段错误,在于时间表示上。对于一个日前,SQL Server数据库能够自动识别下面2种格式: 2005-8-1和2005/8/1
而在实际页面里使用的是-符号表示,但是判断时,使用/进行判断,所有发生了错误
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】Flutter适配HarmonyOS 5知识地图,实战解析+高频避坑指南
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合终身会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· C# 模式匹配全解:原理、用法与易错点
· 记一次SSD性能瓶颈排查之路——寿命与性能之间的取舍
· 理解 .NET 结构体字段的内存布局
· .NET 9中的异常处理性能提升分析:为什么过去慢,未来快
· 字符集、编码的前世今生
· 记一次SSD性能瓶颈排查之路——寿命与性能之间的取舍
· 2025 年实用、全面的 VS Code 插件推荐!
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(五):使用.NET为树莓派
· dify打造数据可视化图表
· Token:大语言模型的“语言乐高”,一切智能的基石