gpt4 book ai didi

sql - 在 DateTime LastUpdated 列上使用 Html.hidden 进行版本跟踪时,MVC.NET 毫秒会丢失

转载 作者:行者123 更新时间:2023-12-03 03:45:38 25 4
gpt4 key购买 nike

简短的问题:

怎么做 this在 MVC.NET 中?

长版问题:

我尝试使用 SQL 表中的 DateTime 列进行版本跟踪(这本身是作为在表的 editview 回传后重新附加 Linq2Sql 数据类的解决方案而提出的)

但现在我得到“行未找到或更改”异常。在 ctx.submit 上:

 ctx.appointments.Attach(appointment,true);
ctx.SubmitChanges();

其中 ctx 是我的 Linq 数据上下文,约会是我的表,约会是我尝试附加的约会对象。我已经按照建议设置了约会表 here

建议解决方案的读者也注意到了这个问题。他建议this作为解决方案。

这里的问题是我没有使用 Webforms,我使用的是 MVC.NET。所以我猜使用

            <%= Html.Hidden("LastUpdate", Model.LastUpdate) %>                

使 LastUpdate 属性发生更改。那么有没有办法确保我在将其传递回更新操作时获得相同(或至少相等)的 DateTime 对象?

我正在使用建议的 gettime() 触发器来更新我的约会表。这显然存储了一个 sql 日期时间对象。 Linq2SQL 可能无法精确解析它。我想这也加剧了问题。

我希望有一个解决方案。我知道仅使用时间戳格式也可以解决它..但这超出了这个问题的范围

最佳答案

我认为问题在于,将上次更新时间写入这样的隐藏字段只会在默认情况下不会呈现毫秒的日期上执行 ToString 。您可以尝试将时间戳呈现为某些绝对值,例如刻度:

<%= Html.Hidden("LastUpdate", Model.LastUpdate.Ticks) %>

然后,您可以通过将值转换回长值并重建日期时间来重建另一侧的日期时间:

var dt = new DateTime(Int64.Parse(ticks));

关于sql - 在 DateTime LastUpdated 列上使用 Html.hidden 进行版本跟踪时,MVC.NET 毫秒会丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2247949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com