【发布时间】:2013-08-02 19:04:38
【问题描述】:
我有一个具有三个角色的 MVC 项目:用户、客户经理和管理员。
管理员有自己的 MVC 区域,他们可以完全控制用户和客户经理。我正在尝试实现允许管理员以任何用户或客户经理的身份查看网站的功能。
在站点的管理区域,我有一个用户和客户经理列表的视图。该列表包含每条记录的“以用户身份查看站点”按钮。
我以前从未做过这样的事情,但 ViewAs 控制器操作当前已设置为使用所选用户的信息创建一个会话,如下所示:
ViewBag.SiteSession = Session["SiteSession"] = new SiteSession()
{
ID = user.ID,
AccountID = user.AccountID,
DisplayName = user.DisplayName,
IsManager = user.IsAdmin,
IsAdmin = false
};
与此操作相关的视图将模型定义为string,除了一个将模型定义为src 属性的 iframe,如下所示:
@model string
<iframe src="@Model" >
</iframe>
我要做的是呈现此 iframe 中请求的网站的任何部分。当管理员单击“以用户身份查看”时,我想定向到主页。该 URL 是通过此调用生成的:
Url.Action("Index", "Home", new { Area = "" }));
为了避免渲染管理区域的主页,区域设置为空。
目前,这不起作用。我什至不知道从哪里开始,减去我已经拥有的。
我正在寻找任何建议。非常感谢所有帮助,因为这似乎不是一件容易的事。
如果您不知道如何提供帮助,如果您能将这个问题发给能够提供帮助的人,我们将不胜感激。
再次感谢您。
【问题讨论】:
标签: asp.net-mvc-4 model-view-controller iframe admin