Ich habe mein Web-API-Projekt auf die neueste Version aktualisiert, mit MVC 5 Die Anwendung läuft ordnungsgemäß, aber diese Codezeile funktioniert nicht mehr auf meinem Gerät Tests:Unit Test mit Routendaten arbeiten nicht auf ASP.NET MVC 5 Web API
string uri = this.Url.Link("DefaultApi", new { id = savedOrganization.Id });
Die Url-Eigenschaft des Controllers ist jetzt null. Dies ist, wie ich die Mock-Controller konfigurieren:
var config = new HttpConfiguration();
var request = new HttpRequestMessage(HttpMethod.Post, "http://xxx/api/organization");
var route = config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{id}");
var routeData = new HttpRouteData(route, new HttpRouteValueDictionary {{"controller", "organization"}});
controller.ControllerContext = new HttpControllerContext(config, routeData, request);
controller.Request = request;
controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = config;
controller.Request.Properties[HttpPropertyKeys.HttpRouteDataKey] = routeData;
Bevor MVC Upgrade 5 es funktionierte gut.
Wenn ich den Test debuggen zeigt es, dass die Url-Eigenschaft jetzt null ist