1

我有一个实体,它有一个来自用户表的 userId 列和一个提交的日期列。当我创建一个新实体时,我想使用

@Html.HiddenFor(m => m.submitteddate)
@Html.HiddenFor(m => m.SubmittedById, User.Identity.GetUserId())

有当前日期和用户 ID 通过我试过

 @Html.HiddenFor(m => m.submitteddate, DateTime.Now.ToString())
 @Html.HiddenFor(m => m.SubmittedById, User.Identity.GetUserId())

但它没有用。

实现这一目标的最佳方法是什么?是否有另一种方法可以在视图中执行此操作,或者我应该在模型或控制器获取或控制器发布方法中设置变量?

我正在使用 mvc5,带有实体框架 6 和 c# 的剃刀语法

4

1 回答 1

1

将我之前的评论收集到一个答案中:

在 HTML 的隐藏字段中设置用户 ID 会产生安全问题,因为最终用户将能够更改 ID,从而冒充另一个用户。

为避免此问题,请在回发后在控制器中设置提交日期和 SubmittedById。这样,您可以确定这些值已设置并且是正确的值。

于 2013-10-23T20:23:59.240 回答