【问题标题】:Partial Views MVC3 razor局部视图 MVC3 剃须刀
【发布时间】:2012-02-09 06:55:59
【问题描述】:

我正在使用 MVC3 剃须刀,在 Views 文件夹中我有 4 个文件夹:

共享

  • _Layout.cshtml

文件夹 2

  • 索引.cshtml
  • 上传文件.cshtml

uploadFile 是 folder2s' index.cshtml 的部分视图

文件夹 3

  • 索引.cshtml
  • _list.cshtml

文件夹 4

  • 索引.cshtml
  • _CreateFile.cshtml

我是 MVC3 的新手,所以我的问题并不难

如何在 _list.cshtml 和 _createFile.cshtml 中使用 UploadFile.cshtml 我在 UploadFile.cshtml 中的其他文件夹中需要相同的功能

在 UploadFile.cshtml 我有

     <script type="text/javascript">
    function createUploader() {
        var uploader = new qq.FileUploader({
            element: document.getElementById('FileUploader'),
            action: 'Chat/FileUpload',
            debug: true
        });
    }
    window.onload = createUploader;     
</script>   
        <div id="FileUploader">     
    <noscript>          
        <p>Please enable JavaScript to use file uploader.</p>
    </noscript>         
</div>

我想在不同的地方使用这个上传器,不像@Html.Action

喜欢@Html.Partial 或类似的东西

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-3 views partial


    【解决方案1】:

    你可以在你的控制器中做一些动作来返回你的UploadFile局部视图,然后像这样从任何地方调用它

    @Html.Action("UploadFileAction", "Folder2Controller", params)
    

    另请注意,最好在部分视图的名称开头使用下划线,例如_UploadFile。它可以让其他人更容易看到您的资源。

    否则,如果您不想采取行动,您可以简单地使用Html.Partial 方法调用您的局部视图。我没有测试它,但它应该可以工作

    @Html.Partial("~/Views/Folder2/UploadFile.cshtml", model)
    

    【讨论】:

      【解决方案2】:

      将部分移动到/Views/Shared 目录中。这将使它可以从任何地方访问。您可以将其与Html.Partial 一起使用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-28
        相关资源
        最近更新 更多