Ich habe Schwierigkeiten, diese WebAPI zu arbeiten. Nun, arbeite mit IIS. Alles funktioniert gut in IIS Express, aber wenn ich es publiziere, funktioniert genau 1 API-Anfrage nicht. Ich versuche auf eine URL von API/[Controller]/{date}/{integer}
zuzugreifen. Ich bekomme immer den Fehler 500 Server. Meine andere Route von API/[Controller]/{date}
funktioniert.ASP.NET Core WebAPI 500 Interner Fehler in IIS 7.5
Hier ist meine API Controller:
[Route("api/[controller]")]
public class PostingsController : Controller
{
// GET: api/Postings/5
[HttpGet("{date}")]
public string Get(string date)
{
return date;
}
// GET api/Postings/20160407/2
[HttpGet("{date}/{modeID}")]
public List<TruckPosting> Get(string date, int modeID)
{
TruckPosting tp = new TruckPosting();
List<TruckPosting> truckPostings = tp.GetTruckPostings(date, modeID);
return truckPostings;
}
}
könnte der Grund sein, dass ich eine Liste <> zurück bin versucht? Ich bin davon überzeugt, dass es in VS IIS Express funktioniert.
bearbeiten
Hier ist meine startup.cs Seite:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
public void Configure1(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseIISPlatformHandler();
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseFileServer(true);
app.UseMvc();
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.Map("/appRoot", (app1) => this.Configure1(app1, env, loggerFactory));
}
Haben Sie das Ereignisprotokoll des Servers überprüft? Normalerweise wird eine 500 durch eine Ausnahme verursacht, und oft finden Sie diese Details im 'Application Log' auf dem IIS-Rechner. – CodingGorilla
können Sie die Verwendung Ihrer Zeichenfolge Datumsparameter untersuchen – InferOn
@ Infer-On Was meinst du? – James