在ASP.Net 4.5.1中捆绑内容而不是引用?

时间:2014-08-18 17:27:27

标签: asp.net-mvc-4 bundling-and-minification

我们的单页Web应用程序将使用一些引导模式窗口。 Bootstrap似乎隐藏了它们直到它们需要,所以简单地将所有模态HTML附加到表单的底部似乎是一个简单的计划。

为了帮助组织,我想做一些类似于捆绑JS文件的事情。但是,我不希望捆绑包输出包含模式对话框HTML的文件的链接,我想将这些文件中的实际内容捆绑在一起,然后插入文档的底部。

我看过但是唯一的Bundle选项似乎是Less,Style和Script。这似乎是一个安全的选择,它们将生成对文件的引用,而不是像我正在寻找的那样插入文件的内容。

如果Bundles还没有办法,我还有什么办法可以将另一个文件的内容注入服务器端的页面?

1 个答案:

答案 0 :(得分:0)

我相信你可以通过使用不需要或使用控制器动作的@Html.Partial()来完成你想要的任务。

我们使用这种方法来创建包含在内的子部分'进入更大的HTML体系,例如我们的脚本链接,css链接,html模板和我们模态的标记。

如果你有一个带有以下标记的Bootstrap模式:

<div class="modal fade">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
        <h4 class="modal-title">Modal title</h4>
      </div>
      <div class="modal-body">
        <p>One fine body&hellip;</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div><!-- /.modal-content -->
  </div><!-- /.modal-dialog -->
</div><!-- /.modal --> 

将视图放在~/Views/Shared/文件夹中,名称为_modalMyModal,您应该能够引用该视图并使用以下内容包含其标记:

@Html.Partial("_modalMyModal")

最终结果应该与将模态的标记直接放在父视图中相同。

我们试图记住在这些部分中包含开始和结束注释,以帮助在更大的标记体内标记它们。类似的东西:

<!-- begin _modalMyModal --> ... <!-- end _modalMyModal -->