MVC - 以iFrame身份查看

时间:2017-01-17 11:06:02

标签: c# asp.net-mvc iframe html-helper action-filter

我对MVC很新,我想知道是否有可能创建一个自定义动作过滤器,例如" ChildAction",以允许视图为由iFrame调用。

例如:

[IframeAction] // Custom attribute
[HttpGet]
public ActionResult Embeddable (){ // Only accessible if called by an iframe
    return View();
}

提前感谢您提供任何可能的帮助。

最诚挚的问候,

凯文

EDITED

到目前为止,我的代码是:

public class IframeActionAttribute : ActionMethodSelectorAttribute
{
    public override bool IsValidForRequest(ControllerContext controllerContext, MethodInfo methodInfo)
    {
        var request = controllerContext.RequestContext.HttpContext.Request.QueryString["iframe"];
        if (!string.IsNullOrEmpty(request) && request.Equals("true"))
            return true;

        return false;
    }
}

这用作我之前提供的示例,它检查请求字符串是否具有param:iframe设置为true

嵌入示例:

<iframe src="@string.Format("{0}embed/{1}?iframe=true", ConfigurationManager.AppSettings["App:BaseUri"], Model)"></iframe>

这是要走的路还是有更好的方法?

0 个答案:

没有答案