问题标签 [asp.net-mvc-apiexplorer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-core - 如何将 healthcheck 端点添加到 ApiExplorer,以便 Swashbuck 将其包含在生成的 swagger.json 中
我已经Microsoft.AspNetCore.Diagnostics.HealthChecks
向我的应用程序添加了样式健康检查,正如Microsoft 在这里记录的那样。
我也在使用Swashbuckle来生成一个招摇的文档。然后我使用NSwag生成一个客户端 API 供我的其他应用程序使用。
问题是MapHealthChecks
在Startup.cs中添加的运行状况检查端点没有被添加到ApiExplorer
. 这是一个问题,因为它是 Swashbuckle 用来生成 swagger 文档的。
所以我的问题是将 healthcheck 端点添加到 ApiExplorer 以便 Swashbuckle 可以将其包含在 swagger 文件中的最佳方法是什么?
我试图手动添加健康检查端点添加 ApiExplorer(下面的代码)。应用程序运行成功,但 swagger 文档不包含端点。
asp.net-core - 在 ASPNET Core 的路由中使用 ApiExplorerSettings GroupName
在 ASP.NET Core - Web API 项目中
[ApiExplorerSettings(GroupName = "<group-name>")]
在 ApiController 和属性中使用装饰[Route]
我想参考上面的GroupName
属性值。
另请注意,我确实[ApiVersion("<some-version>")]
在同一个控制器上进行了进一步分类。
以下是一些示例来解释:
示例 1:
LeadController 上的属性:[ApiVersion("1.0"), ApiExplorerSettings(GroupName = "sales"), [Route("api/{groupName}/v{version:apiVersion}/leads"]
预期的翻译路线格式:/api/sales/v1/leads
AccountsController 上的属性:[ApiVersion("2.1"), ApiExplorerSettings(GroupName = "finance"), [Route("api/{groupName}/v{version:apiVersion}/accounts"]
预期的翻译路线格式:/api/finance/v2.1/leads
上面{version:apiVersion}
给了我ApiVersion
价值(我假设是因为该属性已将 ToString 设置为版本值)。但是当我尝试{groupName}
or{grp:groupName}
或{grp:ApiExplorerSettings.GroupName}
- 它们都不起作用。如何在路由属性中访问该组名?
asp.net-core - [FromBody] 的招摇问题
我正在尝试将 swagger 集成到我们的应用程序中。我在一个独立的应用程序中尝试了这个,一切都很顺利。我对我们的应用程序进行了类似的更改,但是当我使用 [FromBody] 而不是 [FromQuery] 时,swagger 页面为空(未提供 API 定义)。
我不知道发生了什么;看起来枚举动作的过程正在崩溃。但我无法确认这一点,因为我没有在任何地方看到这个记录。我使用的是 4.0.1 版。
asp.net-mvc - 使用以下代码行在 Windows Server 2016 上执行 IronOCR 时,出现如下所述的错误
代码 :
错误:
“InnerException”:{“Message”:“发生错误。”,
“ExceptionMessage”:“IronOcr.Extensions.oqqfzn 中的回退逻辑失败。”,
“ExceptionType”:“System.AggregateException”,
“StackTrace” :“在 IronOcr.Extensions.oqqfzn.get_muakdj() 在 IronOcr.Extensions.oqqfzn.xphtgm(Int32 dvu, Int32 dvv, Int32 dvw) 在 IronOcr.Extensions.oqqgab.Create(Int32 宽度, Int32 高度, Int32 深度) 在 IronOcr .Extensions.oqqgaa.xqiwis(Bitmap guw) at IronOcr.OcrInput.tmfvpw(Bitmap cv) at IronOcr.OcrInput.tmfvpv(Object ct, Nullable 1 cu) at IronOcr.OcrInput.tmfvpv(Object ct, Nullable
1 cu)",
"InnerException":{
"Message": "发生错误.",
"异常消息": "无法初始化 IronOcr.Extensions.oqqfzn 本机库。",
"ExceptionType": "IronOcr.Extensions.oqqfzo",
“StackTrace”:“在 IronOcr.Extensions.oqqfzn.xphtgc() 在 IronOcr.Extensions.oqqfzn.xphtga()”,
“InnerException”:{
“Message”:“发生错误。”,
“ExceptionMessage”:“可能找不到或从任何名称加载本机库:[ leptonica-1.78.0.dll,liblept,liblept.dll ]”,
“ExceptionType”:“System.DllNotFoundException”,
“StackTrace”:“在 NativeLibraryLoader.WindowsNativeLibraryResolver.GetLibrary(字符串 libraryName, IEnumerable 1 LibraryNames, Boolean WindowsUsesMSVCBuild, IEnumerable
1 Paths) at IronOcr.Extensions.oqqfzn.xphtgc()",
"InnerException": {
"Message": "An error has occurred.",
"ExceptionMessage": "一个或多个错误发生。",
"ExceptionType": "System.AggregateException",
"StackTrace": null,
"InnerException": {
“Message”:“发生错误。”,
“ExceptionMessage”:“加载'leptonica-1.78.0.dll'(5)时出错:”,
“ExceptionType”:“System.Exception”,
“StackTrace”:“在 NativeLibraryLoader.LibraryLoader.LoadNativeLibrary(String name, PathResolver pathResolver) 在 NativeLibraryLoader.LibraryLoader.LoadNativeLibrary(String[] names, PathResolver pathResolver)"
} } } } }
注意: 服务器上安装了 Microsoft Visual C++ Redistributable(x86 和 x64)的 2015-2022。