ServiceStack.Host.MVC vs ASP.NET MVC

2018-09-11 14:37:04 浏览数 (1)

ServiceStack.Host.MVC vs ASP.NET MVC

解决方案

解决方案子项

ServiceStack.Host.MVC(3.9.71)

ASP.NET MVC(3.0)

路由

路由规则

1.只能配置/home/{name}/{page}形式2.不能对匹配区域({name})指定任何形式的通配符(正则,等等)

1.可配置各种形式的规则,比如:home/{name}_{page}2.可以对匹配区域({name})指定正则匹配

路由匹配

url->路由表->RequestDTO->根据request.method匹配到相应的service.Method1.RequestDTO与Service强绑定,一个service必须有RequestDTO作为入口2.不支持根据路由生成url

url->路由表->Controller->根据request.method&actionName匹配到相应的Action1.一个路由规则可以根据参数的不同配到任意的Controlle.Action入口不受限制2.支持根据路由生成url

路由参数映射

1.从路由映射到RequestDTO

1.从路由映射到Action参数(参数个数灵活)

视图

视图参数

1.基本上只能依靠强类型视图

1.强类型视图2.ViewData3.ViewBag等等

视图语法

1.不支持section等方式,导致模板不灵活2.@{}语句块中不能直接编写非html字符,只能通过Html.raw()输出

1.支持section等各种利于自定义模板的技术2.视图语法更加好用

Ajax

Ajax

依赖于servicestack.js(当然这跟rest技术有关),导致不支持表单序列化提交可在服务器端配置跨域

因为原生,所以并没有影响

  1. 依赖于servicestack.js(当然这跟rest技术有关),导致不支持表单序列化提交
  2. 可在服务器端配置跨域
  3. 因为原生,所以并没有影响

0 人点赞