当前位置: 首页 > 知识库问答 >
问题:

带有ASP. NET MVC WebApi的SwashBuckle 5.4.0-在昂首阔步的网页内不显示留档

壤驷子安
2023-03-14

我目前正在尝试在我的ASP中使用Swashback 5.4.0。NET MVC Web API应用程序。每当我转到swagger生成的页面(通过rooturl/swagger)时,页面都会正确加载,但不会显示任何方法。将我的项目与另一个正常工作的项目进行比较,我可以发现代码中有任何差异。我错过了什么?

这是与问题相关的. cs文件:

SwaggerConfig.cs:

namespace WebApiExperiment
{
    public class SwaggerConfig
    {
        public static void Register()
        {
            var thisAssembly = typeof(SwaggerConfig).Assembly;

            GlobalConfiguration.Configuration.EnableSwagger(c =>
            {
                c.SingleApiVersion("v1", "Swagger Demo Api");
                c.IncludeXmlComments(string.Format(@"{0}\bin\WebApiExperiment.XML",
                                     System.AppDomain.CurrentDomain.BaseDirectory));
            })
                    .EnableSwaggerUi();
        }


    }
}

Startup.cs

[assembly: OwinStartupAttribute(typeof(WebApiExperiment.Startup))]
namespace WebApiExperiment
{
    public partial class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            ConfigureAuth(app);
        }
    }
}

全球的asax公司

namespace WebApiExperiment
{
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            GlobalConfiguration.Configure(WebApiConfig.Register);
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
    }
}

HomeController.cs(我的项目中最简单和最愚蠢的控制器)

namespace WebApiExperiment.Controllers
{
    public class HomeController : ApiController
    {


        public IHttpActionResult Index(SendCodeViewModel sendView)
        {
            return Ok();
        }

        public IHttpActionResult About(SendCodeViewModel sendView)
        {

            return Ok("Your application description page.");
        }

        public IHttpActionResult Contact(SendCodeViewModel sendView)
        {


            return Ok("Your contact page.");
        }
    }
}

对于任何文件,只要让我知道,我会提供给你。

共有1个答案

马浩淼
2023-03-14

简短回答:路由问题。swagger如何在不知道API中的路由的情况下生成文档?

尝试以下操作:

namespace WebApiExperiment.Controllers
{
    [RoutePrefix("api/routingMatters")]
    public class HomeController : ApiController
    {
        [Route("magic")]
        public IHttpActionResult Index(SendCodeViewModel sendView)
        {
            return Ok();
        }
        [Route("magic2")]
        public IHttpActionResult About(SendCodeViewModel sendView)
        {

            return Ok("Your application description page.");
        }
        [Route("magic3")]
        public IHttpActionResult Contact(SendCodeViewModel sendView)
        {
            return Ok("Your contact page.");
        }
    }
}
 类似资料:
  • 问题内容: 我想知道如何用昂扬的方式记录枚举。 根据JavaDoc 数据类型。请参阅文档以获取受支持的数据类型。如果数据类型是自定义对象,请设置其名称,或不设置任何名称。如果是枚举,请为枚举常量使用’string’和allowableValues。 但是我没有找到一些好的Java示例如何真正使用它,规范在这里。 第一服务 第二服务 输入项 天 输出量 pom.xml 您可以在此处查看结果。 我看到

  • 数据类型。有关支持的数据类型,请参见文档。如果数据类型是自定义对象,请设置它的名称,或者不设置任何名称。对于枚举,使用'string'和allowableValues作为枚举常量。 但是我没有找到一些好的Java示例如何真正使用它,规范在这里。 你可以在这里看到结果。 我认为是个问题... 你知道吗?

  • 问题内容: 我正在尝试使用swagger定义post端点,但是不允许使用该参数: 当我跑步时,我得到这个: 我的规格有什么问题? 问题答案: 您可能正在混合使用OpenAPI / Swagger 2.0和OpenAPI 3.0语法。您的规格似乎是2.0,但是关键字是3.0功能。在2.0中,请求正文被定义为正文参数: 更多信息:描述请求正文

  • 我试图用大摇大摆的方式来模拟REST API..我目前创建了nodejs项目,其中默认的js appreas是。/api/controllers/hello_world.js中的hello_world.js。 现在我想创建一个新的控制器,并将其引用到我的YAML,即来自SwaggerUI..我怎么做?任何链接都会很有用。

  • 我们正在为我们的Laravel REST API实现开发Swagger文档。几个POSTendpoint将使用CSV作为参数内容类型。 Swagger中是否有一种方法可以让“立即尝试”功能与CSV POST文件上传一起使用? 下面是我们的留档http://api.curvecompass.com/docs/#/ 我们的Laravel POST函数可以正确地与CSVendpoint一起工作,而不是与

  • 这不是springfox的故事,这是springdoc-openapi的故事。 我当前的依赖项 我的物业 此处请求(localhost:8080/swagger-ui.html)我的服务器响应swagger-petstore示例我已经知道petstore-disable(springdoc.swagger-ui.disable-swagger-default-url=true),但它不起作用 另一