简体   繁体   English

如何将 web api 添加到现有的 asp.net mvc core 6 web 应用程序

[英]How do i add a web api to an existing asp.net mvc core 6 web application

I am trying to add a web API endpoint to an existing web application.我正在尝试将 web API 端点添加到现有的 web 应用程序。 How do I go about doing this?我 go 如何做到这一点? Here is the GitHub link https://github.com/GrindingLife/BHFunctioning这是 GitHub 链接https://github.com/GrindingLife/BHFunctioning

I have tried adding a scaffold of an API controller in the controller folder.我尝试在 controller 文件夹中添加 API controller 的脚手架。 When launched accessing the localhost/api does not work.启动时访问 localhost/api 不起作用。 I do not know what to add to the Program.cs file.我不知道要向 Program.cs 文件添加什么。 All the examples that I've seen are for startup.cs file instead of program.cs我见过的所有示例都是针对 startup.cs 文件而不是 program.cs

Here is my program.cs file这是我的 program.cs 文件

using BHFunctioning.Controllers;
using BHFunctioning.Data;
using BHFunctioning.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.FileProviders;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
var connectionString = builder.Configuration.GetConnectionString("DefaultConnection");
builder.Services.AddDbContext<ApplicationDbContext>(options =>
    options.UseSqlServer(connectionString));
builder.Services.AddDatabaseDeveloperPageExceptionFilter();

builder.Services.AddAuthorization(options =>
{
    options.AddPolicy("RequireAdministratorRole",
         policy => policy.RequireRole("Administrator"));
});
builder.Services.AddIdentity<IdentityUser, IdentityRole>(options => options.SignIn.RequireConfirmedAccount = false)
    .AddEntityFrameworkStores<ApplicationDbContext>()
    .AddRoles<IdentityRole>()
    .AddDefaultUI()
    .AddDefaultTokenProviders();
builder.Services.AddSingleton<IFileProvider>(
            new PhysicalFileProvider(
                Path.Combine(Directory.GetCurrentDirectory(), "wwwroot")));
builder.Services.AddControllersWithViews();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseMigrationsEndPoint();
}
else
{
    app.UseExceptionHandler("/Home/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthentication();


app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");
app.MapRazorPages();

app.Run();

I have solved it, i just needed to add the following into Program.cs and call it using localhost:2444/api/{controller name}我已经解决了,我只需要将以下内容添加到 Program.cs 中并使用 localhost:2444/api/{controller name} 调用它

builder.Services.AddRazorPages();
builder.Services.AddControllers();
app.UseEndpoints(endpoints =>
{
    endpoints.MapRazorPages();
    endpoints.MapControllers();
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我可以将 ASP.NET Core MVC 添加到现有的 ASP.NET Web Z645024253191A381C36Z83CAE8 - Can I add ASP.NET Core MVC to existing ASP.NET Web Forms Application 如何将Web API添加到现有的ASP.NET MVC(5)Web应用程序项目? - How to add Web API to an existing ASP.NET MVC (5) Web Application project? 如何将 Web API controller 添加到现有的 Z9E0DA8438E1E38A1C30F4B76CE3 内核 MVC? - How to add Web API controller to an existing ASP.NET Core MVC? 如何在 asp.net 核心 3.1 mvc web 应用程序中将日志保存到数据库? - How do I save logs to database in asp.net core 3.1 mvc web application? 现有ASP.NET Web API中的ASP.NET MVC 4 - ASP.NET MVC 4 in existing ASP.NET Web API 将文件从 ASP.NET MVC 4.6 应用程序发布到 ASP.NET Core Web API - Posting a file from ASP.NET MVC 4.6 application to ASP.NET Core Web API How do I setup a ASP.net Core MVC web application to IIS when publishing it creates.dll, .pdb, and.json files - How do I setup a ASP.net Core MVC web application to IIS when publishing it creates .dll, .pdb, and .json files 如何避免循环引用asp.net core mvc [HttpPost(&quot;add-recipe&quot;)] web api - How to avoid the circular referencing asp.net core mvc [HttpPost("add-recipe")] web api 如何将 ProcessModel 添加到 asp.net 核心 Web 应用程序 - How to add ProcessModel to an asp.net core web application 如何从 ASP.NET 核心 mvc 向 ASP.NET 核心中的 Web API 发出 PUT 请求? - How to make a PUT request from ASP.NET core mvc to Web API in asp.net core?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM