Wenn schaffen wir ein Modul in einem NancyFX App, wir Routing auf diese Weise:Routenname vereinbarungs oder Modulnamen in NancyFX
public class HappyModule : Nancy.NancyModule
{
public HappyModule() : base("/Happy")
{
Get["/"] = _ => "Received GET request";
}
}
Wenn wir also http://<host>:<port>/Happy/
schlagen wir die erwartete Antwort erhalten. Ich denke jedoch, dass das Festcodieren von Routen nicht "sehr wartungsfreundlich" ist (besonders bei großen Systemen), also stellt sich die Frage: Gibt es eine Möglichkeit, eine Konvention oder etwas festzulegen, die Routen durch ihre jeweiligen Namen benennt? Modulname, so muss ich nicht immer die Basis NancyModule
Konstruktor erweitern/hard-code Route?
Was ich wirklich wissen möchte ist: Gibt es einen Routing-Mechanismus ähnlich dem, den wir in ASP.NET WebApi (Code unten) haben?
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 }
);
}
an den docs Blick scheint dies nicht möglich https://github.com/NancyFx/Nancy/wiki/Definieren von Routen. –