我有一个asp.NET核心控制台项目,它正在使用ApplicationPart加载API程序集。我需要添加swagger来公开API,但是当我将Swashbuckle安装到控制台项目并在startup类中配置swagger时,如果我导航到swagger UI,什么也找不到。它返回401错误。
services.AddMvc
.AddApplicationPart(WebApi.GetAssembly()).AddControllersAsServices();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1"});
});
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
我可以很好地调用控制器上的操作,但似乎Swashbuckle没有为它生成任何昂首阔步。我是错过了什么还是还不支持?任何建议都将不胜感激!
当我不使用Swagger时,在我的上下文中,我遇到了类似的问题,所以我确保手动加载控制器:
public void ConfigureServices(IServiceCollection Services)
{
// find all controllers
var Controllers =
from a in AppDomain.CurrentDomain.GetAssemblies().AsParallel()
from t in a.GetTypes()
let attributes = t.GetCustomAttributes(typeof(ControllerAttribute), true)
where attributes?.Length > 0
select new { Type = t };
var ControllersList = Controllers.ToList();
Logging.Info($"Found {ControllersList.Count} controllers");
// register them
foreach (var Controller in ControllersList)
{
Logging.Info($"[Controller] Registering {Controller.Type.Name}");
Services
.AddMvc()
.AddJsonOptions(Options => Options.SerializerSettings.ContractResolver = new DefaultContractResolver())
.AddApplicationPart(Controller.Type.Assembly);
}
在init中有了这一点,控制器就可以正确地添加和初始化
我正在做一个我命名为“主项目”的项目。我至少有10个不同的小项目在那里,这个项目可能会增长。我对所有这些项目只有一个自信,因为所有这些项目都只使用一个dotnet核心web应用程序来进行推广。 例如,假设我有一个名为的项目和一个名为的项目。有三个不同的endpoint,分别名为、、、和。这两个不同的项目将出现在一个大摇大摆的UI中,如下所示: 我想做的是在一个dotnet核心web项目中设置多个不
我正在开发一个社交网络应用程序。我遇到了一个问题,我试图从数据库中名为用户的表中获取名称和用户名。为了能够做到这一点,而无需单独访问所有控制器,我必须创建一个名为MY_Controller的核心控制器。 问题是(MY_Controller没有公共$用户): 如您所见,我使用__construct函数加载了User_model,使其可用并在所有控制器中使用。 我想在名为templates的文件夹中获
我有一个<代码>。NET Core项目我试图运行Fortify扫描。据我所知,目前还没有VS2017 Fortify插件可用,但我很好奇是否可以使用围绕插件工作,仍然执行Fortify扫描?如果是这样,我怎么能把它合并到我的清洁、翻译和扫描命令中? 当前Fortify版本:
我正在尝试运行以下powerShell脚本,以便使用Fortify扫描我的解决方案(.NET Core 2.0): 在我的本地机器上一切都很好。 但当我试图在服务器上运行它作为TeamCity(TeamCity Enterprise 2018.2.1(build 61078))中的构建步骤时,我遇到了一个错误: 我在本地和服务器中使用相同版本的Fortify(Fortify静态代码分析器17.20
知道如何正确设置控制器描述吗? 谢谢,马里奥