Un vero capolavoro questo. Ho creato due ApiControllers che sto usando come un webservice JSON: -WebApi Controller per il controller non è stata trovata alcuna azione
namespace ControlTower.Controllers
{
public class AirlinesController : ApiController
{
private static IEnumerable<Airline> MapAirlines()
{
return (Jetstream.AirlineObject.GetAirlines()).Select(x => x);
}
[HttpGet]
public IEnumerable<Airline> GetAirlines()
{
return MapAirlines().AsEnumerable();
}
[HttpGet]
public Airline GetAirlineByCode(string code)
{
return Jetstream.AirlineObject.GetAirline(code);
}
}
}
e: -
namespace ControlTower.Controllers
{
public class ReviewsController : ApiController
{
private static IEnumerable<Review> MapReviews(int airline)
{
return (Jetstream.ReviewObject.GetReviews(airline)).Select(x => x);
}
[HttpGet]
public IEnumerable<Review> GetReviews(int airline)
{
return MapReviews(airline).AsEnumerable();
}
[HttpGet]
public Review GetReviewById(int review)
{
return Jetstream.ReviewObject.GetReview(review);
}
}
}
Con questo percorso: -
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/get/{code}",
defaults: new { code = RouteParameter.Optional }
);
E durante la visita /api/airline/get/ba
o /api/airline/get/
funziona perfettamente, visitando qualsiasi variazione di non riesci a leggere. Qualcuno può vedere qualcosa di veramente ovvio mi manca qui?
L'aiuto è apprezzato.
Puoi pubblicare gli URL esatti di quello che stai utilizzando e anche il messaggio di errore e lo stacktrace se ce n'è? Indovina: non stai inviando una compagnia aerea o una recensione e "int" è di tipo value deve avere un valore. Cambiarli in 'int?' – nemesv
Ho provato i seguenti URI: '/ api/reviews/get/ba','/api/reviews/get/','/api/reviews/get/1' ... I ottenere sempre la stessa uscita: - '{ $ id:" 1 ", Messaggio:" Nessuna risorsa HTTP trovata che corrisponde all'URI della richiesta 'http: // localhost: 88/ControlTower/api/reviews/get/1 '. ", MessageDetail:" Nessuna azione è stata trovata sul controller' Recensioni 'che corrisponde alla richiesta. " } ' – dooburt