Blazor C#日期显示为1月1日凌晨12:00:00



我对Blazor完全陌生,刚刚投入到一个项目中。

我正在使用ORM从数据库中提取数据。由于某种原因,当我返回数据时,它显示为1/1/0001 12:00:00Am

这就是我从DB 获取数据的方式

string sql = "Select top Value1, Value2, Value_DateTime from DBO.T_1";
return _db.LoadData<Model1, dynamic>(sql, new { });

这就是我在.Razor页面中尝试用值填充表格的方式

<td>@Value.Value_DateTime</td>

所有其他数据显示正确。当我在SSMS中运行查询时,它会找到正确的日期。

编辑:

Task<List<T>> LoadData<T, U>(string sql, U parameters);

问题可能是SQLDateTime数据类型和C#System.DateTime结构之间不兼容。有一个替代版本:System.Data.SqlTypes.SqlDateTime结构-切换到Model中的那个结构应该™解决你的问题。

以下是文档链接:https://learn.microsoft.com/en-us/dotnet/api/system.data.sqltypes.sqldatetime?view=dotnet-plat-ext-3.1

相关摘录:

。。。SqlDateTime结构与其对应的.NET Framework类型DateTime具有不同的底层数据结构。。。

Blazor C#日期显示为1/10000112:00:00Am

您显示的DateTime尚未初始化。在代码的某个地方,您只是没有将数据从数据库移动到随后显示的字段中。遗憾的是,你的代码太不标准了,我不会调试它——尤其是因为不需要使用动力学——但在某些地方你会犯错误。

相关内容

  • 没有找到相关文章

最新更新