【问题标题】:how to use asp.mvc masterpage on non mvc page如何在非 mvc 页面上使用 asp.mvc 母版页
【发布时间】:2013-02-26 04:41:23
【问题描述】:

我有一个 mvc 网站,其中包含一个非 mvc 页面(它使用 ajax 和 java-script,所以 mvc 不是一个好的选择)。

问题是我仍然想使用相同的母版页。如果我设置母版页(MasterPageFile="~/Views/Shared/Site.Master"),则会收到此错误:

运行时错误 说明:服务器上发生应用程序错误。此应用程序的当前自定义错误设置阻止查看应用程序错误的详细信息。

详细信息:要在本地服务器计算机上查看此特定错误消息的详细信息,请在位于当前 Web 应用程序根目录的“web.config”配置文件中创建一个标签。然后,此标记应将其“模式”属性设置为“RemoteOnly”。要在远程机器上查看详细信息,请将“mode”设置为“Off”。

有没有办法可以将我的 mvc 母版页用于非 mvc 页面?

【问题讨论】:

  • 它使用的是ajax和java-script,所以mvc不是一个好的选择,请你再解释一下。
  • 我被以下陷阱抓住了:控件的 ID 在输出到 HTML 之前被重命名,因为控件位于命名容器内,所以当我尝试 $find 时,例如控件不存在,因为 mvc 已将其重命名。当我研究在 mvc 中使用 webform 控件时,我得到了 cmets “MVC ViewPage 中通常不支持服务器端 WebForms 控件。如果你想使用 MVC ViewPages,你必须找到编写的库专门用于 MVC。"

标签: asp.net asp.net-mvc


【解决方案1】:

你说“...不是一个好选择...”很奇怪,因为 AJAX 和 Javascript 根本不依赖于 MVC 框架。 如果您想继续使用此方法,请关闭 web.config 中的自定义错误以了解此页面发生的情况并更新您的问题。

Web.Config:

<customErrors mode="Off" />

【讨论】:

    【解决方案2】:

    阅读有关在 MVC 中使用控件的更多信息,似乎关键是使用与 MVC 兼容的控件(而不是尝试拼凑框架组合)。

    所以在我的情况下,我应该扔掉为这个项目购买的 1000 美元的 html 编辑器软件,而改用 CKEditor 或 TinyMCE。

    更新: 我已经在 MVC 中成功实现了 TinyMCE,效果很好

    【讨论】:

      【解决方案3】:

      由于 Grayson 提到的原因,最好为普通的 aspx 页面设置一个单独的母版页。

      【讨论】:

        猜你喜欢
        • 2011-05-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多