【问题标题】:Can't set up asp.net mvc 2 RC and spark view engine无法设置 asp.net mvc 2 RC 和 spark 视图引擎
【发布时间】:2011-01-09 11:06:21
【问题描述】:

有人知道如何解决“找不到方法:'Void System.Web.Mvc.ViewContext..ctor(System.Web.Mvc.ControllerContext, System.Web.Mvc.IView, System.Web.Mvc. ViewDataDictionary,System.Web.Mvc.TempDataDictionary)'。"例外。此解决方案不起作用http://dotnetslackers.com/articles/aspnet/installing-the-spark-view-engine-into-asp-net-mvc-2-preview-2.aspx

谢谢大家。

【问题讨论】:

  • 我目前遇到了同样的问题!正在寻找解决方案...

标签: asp.net asp.net-mvc-2 spark-view-engine


【解决方案1】:

我必须下载 spark 视图引擎源代码 (http://sparkviewengine.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27600)。完成此操作后,我浏览了每个引用 System.Web.Mvc 程序集的 1.0 版本并更新为指向 System.Web.Mvc 2.0 的引用的项目。从那里您可以构建解决方案(在 Visual Studio 中),您会发现一大堆测试开始失败。您可以尝试修复它们(通过添加您会发现现在需要的附加 TextWriter 参数)。您还将看到 SparkView.cs 文件抱怨缺少参数。在 Render 方法(我下载的源代码的第 100 行)中,我必须将 WrappedViewContext 的实例化更新为如下所示(将 writer 添加到参数列表的末尾):

public void Render(ViewContext viewContext, TextWriter writer)
{
    var wrappedHttpContext = new HttpContextWrapper(viewContext.HttpContext, this);

    var wrappedViewContext = new ViewContext(
        new ControllerContext(wrappedHttpContext, viewContext.RouteData, viewContext.Controller),
        viewContext.View,
        viewContext.ViewData,
        viewContext.TempData,
        writer); //  <-- add the writer to the end of the list of parameters

    ...
}

更新代码后,您可以运行您下载的源代码根目录中的 build.cmd 脚本。构建过程将在 build/dist 文件夹中创建一个 zip 文件。获取这些新的 dll 并将它们添加到您的网站。事情应该会再次起作用。

【讨论】:

    【解决方案2】:

    在给出这个答案时,sparkviewengine.codeplex.com 上提供了 MVC 2 RC2 位

    http://sparkviewengine.codeplex.com/releases/view/41143

    实际上是 R0MANARMY 提到的帖子中的 Erik 帮助把这些东西弄到了那里。

    【讨论】:

      【解决方案3】:

      看起来您也可以从here 下载编译后的二进制文件。正如帖子所说,它不是最终(或官方)版本,但至少看起来单元测试通过了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-24
        • 2010-12-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-11
        • 1970-01-01
        相关资源
        最近更新 更多