c# MVC 3 / jQuery预览按钮CMS

本文关键字:按钮 CMS jQuery MVC | 更新日期: 2023-09-27 17:49:15

我正在为我的雇主开发一个包含许多cms风格功能的新网站。其中之一就是能够创建页面、指定url、菜单等。

这一切都很好。

我要的是一种方法来创建一个"预览"按钮在这些页面上,不写到数据库。我想张贴(最好是整个模型,如果不是,只是表单数据)到一个新的窗口,并有该视图渲染页面。

我到处找,找不到一个有意义的例子。大多数人似乎已经放弃了:/

我用TempData自己尝试过,但是在我可以渲染页面之前,TempData被清除了(因为我可以推断出有超过2个步骤)。

我必须POST,因为表单数据将包含HTML(在Telerik Editor控件中)。

有没有人有什么好的方法来完成这个?或者谁能提供一些资源的链接?(我完全空白!)

问候,

化学

c# MVC 3 / jQuery预览按钮CMS

您可以将模型存储在会话状态

我将把数据存储在会话状态。

this可能有用:http://davidhayden.com/blog/dave/archive/2011/02/09/SessionLessControllersMvc3.aspx

您仍然可以使用TempData。首先,您需要显式地告诉会话中的leave值,例如:

string messageValue = (string) TempData.Peek("message"); // Does not cause ejection

您可以将模型序列化为XML,然后预览页面的操作方法可以反序列化它。

谢谢大家的帮助。

我成功地使用了TempData.

我基本上是ajax post到一个操作,该操作使用Guid作为键将内容存储在TempData中。返回Guid,一旦ajax post返回一个带有target="_blank"动作的隐藏表单,就会返回一个通过Guid传递的Preview动作方法。该预览操作然后呈现带有TempData中的内容的视图。

谢谢你的建议。这让我开始思考!

问候,

化学