[C#] Console Porject Web API Project 변환하기
- C#
- 2023. 1. 26. 20:48
개요
- .NET Console Project 를 Web API Project 로 변환하는 방법에 대해서 정리 진행합니다.
- 해당 내용을 응용하면, WorkerService 프로젝트에서 Self Hosting 할 수 있습니다.
개발 환경
- 테스트 개발 환경은 다음과 같습니다.
- .NET 6
- Visual Studio 2022
1. 콘솔 프로젝트 생성
- 제일 먼저 콘솔 프로젝트 생성을 진행합니다.
2. 솔루션.csproj Project 수정
- Console 프로젝트를 Web API 프로젝트로 변환하기 위해서는 .csproj 확장자에서 Project 속성을 변경해 주어야 합니다.
- 초기값은
Microsoft.NET.Sdk
이지만,Microsoft.NET.Sdk.Web
으로 변경 진행합니다.
변경 전
변경 후
프로젝트 다시 로드
- 변경이 완료 되면, 프로젝트 다시 로드 진행합니다.
3. launchSetting.json 확인
- 프로젝트 변경이 완료 되면,
launchSetting.json
내용에서 applicationUrl 속성이 추가된 것을 확인할 수 있습니다.
{
"profiles": {
"ConsoleApp2": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "https://localhost:61560;http://localhost:61561"
}
}
}
4. Startup.cs 클래스 추가
- Startup 클래스를 추가하여, 아래 코드를 추가해 줍니다.
namespace ConsoleApp1;
public class Startup
{
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseRouting();
app.UseEndpoints(endpoints => {
endpoints.MapGet("/", async context => {
await context.Response.WriteAsync("Hello from new web Api");
});
});
}
}
5. Program.cs
using ConsoleApp1;
public class Program
{
static void Main()
{
CreateHostBuilder().Build().Run();
}
public static IHostBuilder CreateHostBuilder()
{
return Host.CreateDefaultBuilder().ConfigureWebHostDefaults(webHost => {
webHost.UseStartup<Startup>();
});
}
}
6. 실행 결과
- 실행 결과, 다음과 같이 웹 호스팅 되는 것을 확인할 수 있습니다.
728x90
'C#' 카테고리의 다른 글
[C# 팁] C# Dictionary 팁과 활용 (0) | 2023.02.14 |
---|---|
[C#] .NET WorkerService Docker Container HEALTHCHECK 방법 (0) | 2023.01.26 |
[C#] .NET6 WorkerService Serilog 사용하기 (0) | 2023.01.26 |
[C# .NET Core] EFCore PostgreSQL CodeFirst 예제 (0) | 2022.11.29 |
[.NET EFCore] EFCore Postgresql Database First 예시 (0) | 2022.11.26 |
이 글을 공유하기