1. 서버 프로젝트 생성
3. 빌드 종속성 설정을 한다
4. Program.cs를 다음과 같이 바꾼다
[변경 전] | [변경 후] |
![]() |
![]() |
using Data.Models;
using HotChocolate.Types.Pagination;
using Microsoft.EntityFrameworkCore;
string ConnectionString = "Server=localhost:15432;Database=postgres;User ID=postgres;Password=";
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDbContext<postgresContext>(options =>
options.UseNpgsql(builder.Configuration.GetConnectionString(ConnectionString)));
builder.Services
.AddGraphQLServer()
.RegisterDbContext<postgresContext>(DbContextKind.Synchronized)
.AddFiltering()
.AddProjections()
.AddQueryType<Query>()
.SetPagingOptions(new PagingOptions
{
MaxPageSize = int.MaxValue - 1,
DefaultPageSize = int.MaxValue - 1,
IncludeTotalCount = true,
});
var app = builder.Build();
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapGraphQL();
});
app.MapGet("/", () => "Hello World!");
app.Run();
5. 아래와 같이 Schema 폴더생성 후 Query.cs 파일을 생성한다
6. Query.cs는 다음과 같이 작업한다
namespace Data.Models
{
public partial class Query
{
[UsePaging]
[UseProjection]
[UseFiltering]
public IQueryable<SeoulPopulation> GetSeoulPopulation(postgresContext dbContext)
{
return dbContext.SeoulPopulation;
}
}
}
7. 프로그램을 실행하면 다음과 같이 나타난다(포트번호는 바뀔수 있음)
8. https://localhost:7145/graphql/ 로 url을 바꾸면 아래와 같이 나타난다
9.CreateDocument버튼을 선택한 다음, 다음과 같이 나타낼수 있다