gpt4 book ai didi

asp.net - Spark-View-Engine 与 ASP.NET MVC2

转载 作者:行者123 更新时间:2023-12-04 18:53:51 26 4
gpt4 key购买 nike

您如何修改 ASP.NET MVC 2.0 项目以与 Spark View 引擎一起使用?

我尝试像这里描述的那样:
http://dotnetslackers.com/articles/aspnet/installing-the-spark-view-engine-into-asp-net-mvc-2-preview-2.aspx

但不知何故,它仍然尝试路由到 .aspx 文件。

这里是我的 global.asax 的代码:

public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);

}

protected void Application_Start()
{
SparkViewFactory svf = new SparkViewFactory();
PrecompileViews(svf);

AreaRegistration.RegisterAllAreas();

RegisterRoutes(RouteTable.Routes);
}

public static void PrecompileViews(SparkViewFactory svf)
{
var controllerFactory = svf;
var viewFactory = new SparkViewFactory(controllerFactory.Settings);
var batch = new SparkBatchDescriptor();
batch
.For<HomeController>()
.For<AccountController>();
viewFactory.Precompile(batch);
}
}

}

最佳答案

http://www.simple-talk.com/community/blogs/asiemer/archive/2010/01/31/89132.aspx

我必须下载 spark View 引擎源代码 ( 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 并将它们添加到您的网站。事情应该再次奏效。

关于asp.net - Spark-View-Engine 与 ASP.NET MVC2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2065153/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com