4

我试图按照这篇文章创建一个 3 页表单向导,将数据传递到每个页面。

他使用 HTML helperserialize来序列化视图中的对象。

@Html.Serialize("wizard", Model)

然而,这个 HTML 帮助器似乎在 MVC 5 中不可用。

我在这里找到了另一个相关的帖子,他建议使用以下内容来序列化对象。

@Html.Hidden("otherComplexData", new Microsoft.Web.Mvc.MvcSerializer().Serialize(complexObject))

但我得到以下错误

There is no argument given that corresponds to the required formal parameter 'mode' of 'MvcSerializer.Serialize(object, SerializationMode)'

它似乎想要一个 SerializationMode,但是记录的那个不需要。https://msdn.microsoft.com/en-us/library/microsoft.web.mvc.mvcserializer.serialize(v=vs.118).aspx

我现在可以往哪个方向走?

谢谢。

4

1 回答 1

2

这是您需要的序列化选项:

https://github.com/ASP-NET-MVC/ASP.NET-Mvc-3/blob/master/mvc3/src/MvcFutures/Mvc/SerializationMode.cs

选项是SignedEncryptedAndSigned

您可以尝试一下,看看它是否会起作用。

有多种方法可以对适合您的数据进行编码。您可以将值放在Json.Encode用于视图的隐藏输入中,也可以放在Json.Decode服务器端。

于 2016-02-08T16:45:42.970 回答