MVC:如何打开.doc文件?

时间:2014-12-04 09:58:51

标签: asp.net-mvc

我有这个显示文档链接的部分视图;

@model IList<DocumentLineViewModel>
<tr>
    <td class="leftCell" style="width: 150px;">
        <label>Documents</label></td>
    <td class="rightCell" id="documentCell">
        @if (Model.Any(x => x.CurrentUrlFlag))
        {
            foreach (var document in Model)
            {
                 <a target="_blank" href="@document.CurrentUrl">
                     @document.CategoryName
                 </a>
            }
        }
        else
        {
            <span>Not Entered</span>
        }
    </td>
</tr>

如果文档是pdf,它可以正常工作,我可以查看该文档。 如果文件是单词(或excel),我会得到这个不受欢迎的提示; enter image description here

如何阻止此事?

EDIT 我尝试过的一种方法是将文档嵌入弹出窗口,但这不起作用;

@model IList<DocumentLineViewModel>
<tr>
    <td class="leftCell" style="width: 150px;">
        <label>Documents</label></td>
    <td class="rightCell" id="documentCell">
        @if (Model.Any(x => x.CurrentUrlFlag))
        {
            foreach (var document in Model)
            {
                if (document.CurrentUrl.ToUpper().EndsWith("PDF"))
                {
                    <a target="_blank" href="@document.CurrentUrl" class="btn">
                        @document.CategoryName
                    </a>
                }
                else
                {
                    <a href="#show-document" class="btn" data-toggle="modal">@document.CategoryName</a>
                    <div class="modal fade" id="show-document" style="display: none">
                        <object src="@document.CurrentUrl"><embed src="@document.CurrentUrl"></embed></object>
@*                        <iframe src="@document.CurrentUrl"></iframe>*@
                    </div>
                }
            }
        }
        else
        {
            <span>Not Entered</span>
        }
    </td>
</tr>

弹出窗口出现了,但内容没有显示该文档。

1 个答案:

答案 0 :(得分:0)

正如@Sippy建议的那样,除了浏览器提供的PDF文件外,AFAIK没有本机支持。

如果您可以使用少量转换器公开您的文档,您可以执行此操作,如以下链接所示:

Google Docs Viewer

SO Post

Display word document on browser(希望这可能对你有所帮助)