J'ai de la difficulté à obtenir le Swashbuckle.AspNetCore (1.0.0) à générer une sortie. J'ai lu l'arrogance.fichier json doit être écrit dans '~/swagger/docs/v1'. Cependant, je n'obtiens pas de sortie.
J'ai commencé avec un tout nouveau ASP.NET API de Base du projet. Je dois mentionner que c'est ASP.NET Core 2. L'API travaille, et je suis capable de récupérer des valeurs dans les valeurs de contrôleur de l'amende juste.
Mon démarrage de classe a la configuration exactement comme décrit dans cet article (Swashbuckle.AspNetCore sur GitHub).
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
});
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
// Enable middleware to serve generated Swagger as a JSON endpoint.
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "MyAPI V1");
});
}
else
{
app.UseExceptionHandler();
}
app.UseStatusCodePages();
app.UseMvc();
//throw new Exception();
}
}
Vous pouvez voir le NuGet références...
Encore une fois, c'est tout le modèle par défaut, mais je inclure le ValuesController pour la référence...
[Route("api/[controller]")]
public class ValuesController : Controller
{
// GET api/values
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// GET api/values/5
[HttpGet("{id}")]
public string Get(int id)
{
return "value";
}
// POST api/values
[HttpPost]
public void Post([FromBody]string value)
{
}
// PUT api/values/5
[HttpPut("{id}")]
public void Put(int id, [FromBody]string value)
{
}
// DELETE api/values/5
[HttpDelete("{id}")]
public void Delete(int id)
{
}
}