为了账号安全,请及时绑定邮箱和手机立即绑定

ASP.NET MVC:无法从 SQL 数据库中检索小时、分钟、秒,它们总是显示 12:00

ASP.NET MVC:无法从 SQL 数据库中检索小时、分钟、秒,它们总是显示 12:00

C#
慕桂英4014372 2022-11-13 16:01:46
注意:我也在寻找一种方法来AddWithParameter避免 SQL 注入风险,但我不确定如何使用 DotNetNuke 做到这一点,所以这是这个问题的第二个问题。我将日期作为 C# 存储DateTime到 SQL 数据库datetime列中。检索该日期时,我无法获取 hh:mm:ss 信息,它始终显示 12:00,但正确检索并显示了日、月、年。这就是我在 SQL 中插入日期的方式:string sqlDateFormat = "yyyy-MM-dd HH:mm:ss.fff";               string sqlInsertString = String.Format("INSERT INTO TABLE_NAME (Date_Column_Name) VALUES ({0})", thisDate?.ToString(sqlDateFormat)};using (IDataContext ctx = DataContext.Instance()){    try    {                          ctx.Execute(System.Data.CommandType.Text,         sqlInsertString);              success = true;                                                         }    catch (Exception ex)    {        System.Diagnostics.Debug.WriteLine(ex.Message);    }}这就是我检索表数据的方式:using (IDataContext ctx = DataContext.Instance()){    string sqlString = @"SELECT Date_Column_Name FROM Table_Name  WHERE ID = " + paramId;    try    {        myTableDates = ctx.ExecuteQuery<TableModel> (System.Data.CommandType.Text, sqlString);    }    catch (Exception ex)    {        System.Diagnostics.Debug.WriteLine(ex.Message);    }}这就是我尝试在视图中显示的方式:<tbody>    @foreach (TableModel tm in Model.AllTablesDates)    {        var dateVar = tm.Date == null ? "N/A" :         tm.Date.Value.ToString("dd-MMM-yyyy h:mm tt");        <tr>            <td data-title="Day">@dateVar</td>                                </tr>    }</tbody>
查看完整描述

1 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

基于这篇文章,将您的声明更改为以下内容:

ctx.Execute("INSERT INTO TABLE_NAME (Date_Column_Name)VALUES (@0)", thisDate);


查看完整回答
反对 回复 2022-11-13
  • 1 回答
  • 0 关注
  • 89 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信