【发布时间】:2017-12-02 07:42:31
【问题描述】:
我正在尝试在ActionResult 中返回 HTML。我已经试过了:
[Produces("text/html")]
public ActionResult DisplayWebPage()
{
return Content("<html><p><i>Hello! You are trying to view <u>something!</u></i></p></html>");
}
这在<iframe> 中不显示任何内容。我试过了:
[Produces("text/html")]
public string DisplayWebPage()
{
return HttpUtility.HtmlDecode("<html><p><i>Hello! You are trying to view <u>something!</u></i></p></html>");
}
Microsoft Edge 给我以下消息:
HTTP 406 错误
此页面不是我们的语言 Microsoft Edge 无法显示此页面,因为它不是可以显示的格式。
Firefox 和 Chrome 拒绝显示任何内容。我也试过HtmlEncode 和普通的ActionResult。这是我的视图中我的<iframe> 的片段:
<div class="row">
<div class="col-sm-12">
<iframe src="/Home/DisplayWebPage" class="col-sm-12"></iframe>
</div>
</div>
为什么我没有收到任何结果?我是不是做错了什么?
【问题讨论】:
-
在 mvc-5 中工作正常(目前无法在 core-mvc 中测试)。您是否尝试过删除
[Produces]属性? -
尝试添加
body标签 -
您的 html 内容缺少结构,这就是导致错误的原因尝试发送有效的 html 内容
-
我试过删除
[Produces],还是不行 -
即使我为 HTML 页面使用了正确的结构,它仍然无法呈现。
标签: c# asp.net-mvc iframe asp.net-core-mvc