我有一个由不同对象组成的ViewModel。在一个页面上,我注册了一个关于票证的信息,我只想让几个对象传递给我的操作,因为当我在操作中创建票证时,我需要来自对象的一些变量。添加票证后,我还需要一个导航对象。
我试图通过这样做传递对象......
<input asp-for="@Model.Riksfardtjanst" hidden="hidden" value="@Model.Riksfardtjanst" />
我也试过这个approch ......
<input asp-for="Riksfardtjanst" hidden="hidden" value="@Model.Riksfardtjanst" />
它们都不起作用,我相信它是因为我使用了html输入字段。关于如何传递我的viewmodel对象的任何建议?我不想把它们作为asp路线发送。
答案 0 :(得分:0)
当你写hidden="hidden"
是一个拼写错误,它代表type="hidden"
或者你是否正在尝试做其他事情?
无论如何,就你的例子而言,Riksfardtjanst
是来自模型的对象属性。
如果是简单类型,则可以执行以下操作:
<input asp-for="Riksfardtjanst" type="hidden" />
由于您声明它是一个对象,您必须将该对象的每个属性作为隐藏字段传递,如下所示:
<input asp-for="Riksfardtjanst.PropA" type="hidden" />
<input asp-for="Riksfardtjanst.PropB" type="hidden" />
<input asp-for="Riksfardtjanst.PropC" type="hidden" />
...
请记住,这通常不是一个好习惯。必须在服务器端验证源自客户端的所有值,因为它们很容易被操作。
让我知道它是否有帮助!