我正在浏览来自GITHUB的实现热毛巾模板和SPA Jumpstart源代码。
我观察到,热毛巾默认模板包含控制器,它将其重定向到Razor视图,以便执行视图,如下所示。公共静态空RegisterHotTowelPreStart() {
// Preempt standard default MVC page routing to go to HotTowel Sample
System.Web.Routing.RouteTable.Routes.MapRoute(
name: "HotTowelMvc",
url: "{controller}/{action}/{id}",
defaults: new
{
controller = "HotTowel",
action = "Index",
id = UrlParameter.Optional
}
);但是,在SPA Jumpstart代码中,我们没有注册任何路由,视图显示在根文件夹中,控制器是纯webapi/breeze控制器,如下所示。
如果我们只对HotTowel项目使用微风webapi控制器,我想知道视图执行是由durundal还是其他框架处理的。
我是新的热毛巾模板,所以它可能是我错过了一些小东西。
发布于 2013-05-28 01:06:14
HotTowell模板基于ASP.NET MVC模板,并且是,旨在作为具有MVC和Web API控制器的ASP.NET MVC应用程序运行。这就是为什么当您从该模板生成应用程序时,您会看到两种类型的控制器和MVC路由。
CCJS有一个不同的出发点。CCJS基于ASP.NET“空Web应用”模板,不依赖于ASP.NET MVC。
当我的单页面应用程序不需要MVC时(它们很少需要),我个人更喜欢CCJS方法,从一个空的ASP.NET web应用程序开始,CCJS的脚步特别容易追随。
在任何HotTowel应用程序中,Durandal单独负责管理视图的加载和显示。Razor仅用于主网页,即在其中显示SPA的下载HTML帧。Razor在SPA视图本身中不起作用。
https://stackoverflow.com/questions/16773970
复制相似问题