我有一个模特:
public class Attribute
{
public int Id { get; set; }
public string Key { get; set; }
public string Value{ get; set; }
}
假设我的视图会显示@model IEnumerable<MyCustomer.ViewModels.Attribute>
,我想为我的密钥和值设置一个EditorFor
,但我只想保留我的Id,而不是在回发后将其放入回发控件中。我该如何实现这一目标?我知道我可以将它隐藏起来,但隐藏的内容可以修改,我不确定这是最安全的事情。我正在向我的视图传递一个新的[]属性,并且需要预设ID
答案 0 :(得分:2)
以下帖子通过为隐藏字段创建值的安全哈希来提供解决问题的方法。
该帖子还链接到一篇包含SecuredValueHtmlHelper源代码的文章,听起来就像你需要的那样。
答案 1 :(得分:0)
我怎样才能实现这个目标?
HTML的工作方式没有奇迹。无论您在HTML表单中添加什么内容,都可以获得回发。无论你省略什么,你都松了。
所以你有几种可能性:
FormsAuthentication.Encrypt/Decrypt
方法。