【发布时间】:2016-05-31 17:16:32
【问题描述】:
当我们在 NancyFX 应用程序中创建模块时,我们会以这种方式进行路由:
public class HappyModule : Nancy.NancyModule
{
public HappyModule() : base("/Happy")
{
Get["/"] = _ => "Received GET request";
}
}
所以,当我们点击http://<host>:<port>/Happy/ 时,我们会得到预期的响应。但是,我认为硬编码路由不是“非常可维护”的事情(特别是在大型系统上),所以问题是:有没有办法设置约定或使路由由其各自命名的东西模块名称,所以这样我就不必总是需要扩展/硬编码路由基本 NancyModule 构造函数?
我真正想知道的是:有没有类似于我们在 ASP.NET WebApi 中的路由机制(代码如下)?
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
【问题讨论】:
标签: c# asp.net-web-api url-routing nancy