Skip to content

Commit 450abf4

Browse files
valbersxperiandriAndrii Chebukin
committed
FSharp.Data.GraphQL.Server.AspNetCore (#430)
Adds ASP.NET Core DI integration using a Giraffe HttpHandler and a WebSocket protocol support Co-authored-by: Andrii Chebukin <XperiAndri@Outlook.com> Co-authored-by: Andrii Chebukin <andrii@lula.is>
1 parent 246d6c0 commit 450abf4

File tree

64 files changed

+5404
-631
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+5404
-631
lines changed

.github/workflows/publish_ci.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,14 @@ jobs:
8080
run: |
8181
dotnet nuget push nuget/FSharp.Data.GraphQL.Server.${{env.VERSION}}.nupkg -s "github.com" -k ${{secrets.GITHUB_TOKEN}} --skip-duplicate
8282
83+
- name: Pack FSharp.Data.GraphQL.Server.AspNetCore project
84+
run: |
85+
cd src/FSharp.Data.GraphQL.Server.AspNetCore
86+
dotnet pack --no-build --nologo --configuration Release /p:IsNuget=true -o ../../nuget
87+
- name: Publish FSharp.Data.GraphQL.Server.AspNetCore project to GitHub
88+
run: |
89+
dotnet nuget push nuget/*Server.AspNetCore*.nupkg -s "github" -k ${{secrets.GITHUB_TOKEN}}
90+
8391
- name: Pack FSharp.Data.GraphQL.Server.Relay project
8492
run: |
8593
cd src/FSharp.Data.GraphQL.Server.Relay

.github/workflows/publish_release.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,14 @@ jobs:
7979
run: |
8080
dotnet nuget push nuget/FSharp.Data.GraphQL.Server.${{env.VERSION}}.{nupkg,snupkg} -s "nuget.org" -k ${{secrets.NUGET_SECRET}} --skip-duplicate
8181
82+
- name: Pack FSharp.Data.GraphQL.Server.AspNetCore project
83+
run: |
84+
cd src/FSharp.Data.GraphQL.Server.AspNetCore
85+
dotnet pack --no-build --nologo --configuration Release /p:IsNuget=true -o ../../nuget
86+
- name: Publish FSharp.Data.GraphQL.Server.AspNetCore project to NuGet
87+
run: |
88+
dotnet nuget push nuget/*Server.AspNetCore*.nupkg -k ${{secrets.NUGET_SECRET}}
89+
8290
- name: Pack FSharp.Data.GraphQL.Server.Relay project
8391
run: |
8492
cd src/FSharp.Data.GraphQL.Server.Relay

.gitignore

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -448,7 +448,4 @@ $RECYCLE.BIN/
448448
## Visual Studio Code
449449
##
450450
.vscode/*
451-
!.vscode/settings.json
452-
!.vscode/tasks.json
453-
!.vscode/launch.json
454-
!.vscode/extensions.json
451+
*/**/.vscode/*

FSharp.Data.GraphQL.Integration.sln

Lines changed: 31 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,19 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
88
Packages.props = Packages.props
99
EndProjectSection
1010
EndProject
11+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{BA7F22E2-D411-4229-826B-F55FF171D12A}"
12+
EndProject
1113
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.IntegrationTests.Server", "tests\FSharp.Data.GraphQL.IntegrationTests.Server\FSharp.Data.GraphQL.IntegrationTests.Server.fsproj", "{E6754A20-FA5E-4C76-AB1B-D35DF9526889}"
1214
EndProject
1315
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.IntegrationTests", "tests\FSharp.Data.GraphQL.IntegrationTests\FSharp.Data.GraphQL.IntegrationTests.fsproj", "{09D910E6-94EF-46AF-94DF-10A9FEC837C0}"
1416
EndProject
15-
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server", "src\FSharp.Data.GraphQL.Server\FSharp.Data.GraphQL.Server.fsproj", "{CA16AC10-9FF2-4894-AC73-99FBD35BB8CC}"
17+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{BDE03396-2ED6-4153-B94C-351BAB3F67BD}"
1618
EndProject
1719
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Shared", "src\FSharp.Data.GraphQL.Shared\FSharp.Data.GraphQL.Shared.fsproj", "{237F9575-6E65-40DD-A77B-BA2882BD5646}"
1820
EndProject
19-
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{BDE03396-2ED6-4153-B94C-351BAB3F67BD}"
21+
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server", "src\FSharp.Data.GraphQL.Server\FSharp.Data.GraphQL.Server.fsproj", "{CA16AC10-9FF2-4894-AC73-99FBD35BB8CC}"
2022
EndProject
21-
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{BA7F22E2-D411-4229-826B-F55FF171D12A}"
23+
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server.AspNetCore", "src\FSharp.Data.GraphQL.Server.AspNetCore\FSharp.Data.GraphQL.Server.AspNetCore.fsproj", "{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}"
2224
EndProject
2325
Global
2426
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -30,18 +32,6 @@ Global
3032
Release|x86 = Release|x86
3133
EndGlobalSection
3234
GlobalSection(ProjectConfigurationPlatforms) = postSolution
33-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
34-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
35-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x64.ActiveCfg = Debug|Any CPU
36-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x64.Build.0 = Debug|Any CPU
37-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x86.ActiveCfg = Debug|Any CPU
38-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x86.Build.0 = Debug|Any CPU
39-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
40-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|Any CPU.Build.0 = Release|Any CPU
41-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x64.ActiveCfg = Release|Any CPU
42-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x64.Build.0 = Release|Any CPU
43-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x86.ActiveCfg = Release|Any CPU
44-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x86.Build.0 = Release|Any CPU
4535
{E6754A20-FA5E-4C76-AB1B-D35DF9526889}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
4636
{E6754A20-FA5E-4C76-AB1B-D35DF9526889}.Debug|Any CPU.Build.0 = Debug|Any CPU
4737
{E6754A20-FA5E-4C76-AB1B-D35DF9526889}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -54,6 +44,18 @@ Global
5444
{E6754A20-FA5E-4C76-AB1B-D35DF9526889}.Release|x64.Build.0 = Release|Any CPU
5545
{E6754A20-FA5E-4C76-AB1B-D35DF9526889}.Release|x86.ActiveCfg = Release|Any CPU
5646
{E6754A20-FA5E-4C76-AB1B-D35DF9526889}.Release|x86.Build.0 = Release|Any CPU
47+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
48+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
49+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x64.ActiveCfg = Debug|Any CPU
50+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x64.Build.0 = Debug|Any CPU
51+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x86.ActiveCfg = Debug|Any CPU
52+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Debug|x86.Build.0 = Debug|Any CPU
53+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
54+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|Any CPU.Build.0 = Release|Any CPU
55+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x64.ActiveCfg = Release|Any CPU
56+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x64.Build.0 = Release|Any CPU
57+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x86.ActiveCfg = Release|Any CPU
58+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0}.Release|x86.Build.0 = Release|Any CPU
5759
{CA16AC10-9FF2-4894-AC73-99FBD35BB8CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
5860
{CA16AC10-9FF2-4894-AC73-99FBD35BB8CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
5961
{CA16AC10-9FF2-4894-AC73-99FBD35BB8CC}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -78,15 +80,28 @@ Global
7880
{237F9575-6E65-40DD-A77B-BA2882BD5646}.Release|x64.Build.0 = Release|Any CPU
7981
{237F9575-6E65-40DD-A77B-BA2882BD5646}.Release|x86.ActiveCfg = Release|Any CPU
8082
{237F9575-6E65-40DD-A77B-BA2882BD5646}.Release|x86.Build.0 = Release|Any CPU
83+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
84+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
85+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Debug|x64.ActiveCfg = Debug|Any CPU
86+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Debug|x64.Build.0 = Debug|Any CPU
87+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Debug|x86.ActiveCfg = Debug|Any CPU
88+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Debug|x86.Build.0 = Debug|Any CPU
89+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
90+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Release|Any CPU.Build.0 = Release|Any CPU
91+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Release|x64.ActiveCfg = Release|Any CPU
92+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Release|x64.Build.0 = Release|Any CPU
93+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Release|x86.ActiveCfg = Release|Any CPU
94+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4}.Release|x86.Build.0 = Release|Any CPU
8195
EndGlobalSection
8296
GlobalSection(SolutionProperties) = preSolution
8397
HideSolutionNode = FALSE
8498
EndGlobalSection
8599
GlobalSection(NestedProjects) = preSolution
86-
{09D910E6-94EF-46AF-94DF-10A9FEC837C0} = {BA7F22E2-D411-4229-826B-F55FF171D12A}
87100
{E6754A20-FA5E-4C76-AB1B-D35DF9526889} = {BA7F22E2-D411-4229-826B-F55FF171D12A}
101+
{09D910E6-94EF-46AF-94DF-10A9FEC837C0} = {BA7F22E2-D411-4229-826B-F55FF171D12A}
88102
{CA16AC10-9FF2-4894-AC73-99FBD35BB8CC} = {BDE03396-2ED6-4153-B94C-351BAB3F67BD}
89103
{237F9575-6E65-40DD-A77B-BA2882BD5646} = {BDE03396-2ED6-4153-B94C-351BAB3F67BD}
104+
{9E795521-CC0E-4E9C-9DC1-66CFCC7A31C4} = {BDE03396-2ED6-4153-B94C-351BAB3F67BD}
90105
EndGlobalSection
91106
GlobalSection(ExtensibilityGlobals) = postSolution
92107
SolutionGuid = {1B712506-56AA-424E-9DB7-47BCF3894516}

FSharp.Data.GraphQL.sln

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,18 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "star-wars-api", "star-wars-
4040
EndProject
4141
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Samples.StarWarsApi", "samples\star-wars-api\FSharp.Data.GraphQL.Samples.StarWarsApi.fsproj", "{B837B3ED-83CE-446F-A4E5-44CB06AA6505}"
4242
EndProject
43+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "chat-app", "chat-app", "{24AB1F5A-4996-4DDA-87E0-B82B3A24C13F}"
44+
EndProject
45+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Data.GraphQL.Samples.ChatApp", "samples\chat-app\server\FSharp.Data.GraphQL.Samples.ChatApp.fsproj", "{225B0790-C6B6-425C-9093-F359A4C635D3}"
46+
EndProject
4347
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{BEFD8748-2467-45F9-A4AD-B450B12D5F78}"
4448
EndProject
4549
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Shared", "src\FSharp.Data.GraphQL.Shared\FSharp.Data.GraphQL.Shared.fsproj", "{6768EA38-1335-4B8E-BC09-CCDED1F9AAF6}"
4650
EndProject
4751
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server", "src\FSharp.Data.GraphQL.Server\FSharp.Data.GraphQL.Server.fsproj", "{474179D3-0090-49E9-88F8-2971C0966077}"
4852
EndProject
53+
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Data.GraphQL.Server.AspNetCore", "src\FSharp.Data.GraphQL.Server.AspNetCore\FSharp.Data.GraphQL.Server.AspNetCore.fsproj", "{554A6833-1E72-41B4-AAC1-C19371EC061B}"
54+
EndProject
4955
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server.Relay", "src\FSharp.Data.GraphQL.Server.Relay\FSharp.Data.GraphQL.Server.Relay.fsproj", "{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}"
5056
EndProject
5157
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Data.GraphQL.Server.Middleware", "src\FSharp.Data.GraphQL.Server.Middleware\FSharp.Data.GraphQL.Server.Middleware.fsproj", "{8FB23F61-77CB-42C7-8EEC-B22D7C4E4067}"
@@ -262,6 +268,42 @@ Global
262268
{F7858DA7-E067-486B-9E9C-697F0A56C620}.Release|x64.Build.0 = Release|Any CPU
263269
{F7858DA7-E067-486B-9E9C-697F0A56C620}.Release|x86.ActiveCfg = Release|Any CPU
264270
{F7858DA7-E067-486B-9E9C-697F0A56C620}.Release|x86.Build.0 = Release|Any CPU
271+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
272+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Debug|Any CPU.Build.0 = Debug|Any CPU
273+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Debug|x64.ActiveCfg = Debug|Any CPU
274+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Debug|x64.Build.0 = Debug|Any CPU
275+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Debug|x86.ActiveCfg = Debug|Any CPU
276+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Debug|x86.Build.0 = Debug|Any CPU
277+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Release|Any CPU.ActiveCfg = Release|Any CPU
278+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Release|Any CPU.Build.0 = Release|Any CPU
279+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Release|x64.ActiveCfg = Release|Any CPU
280+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Release|x64.Build.0 = Release|Any CPU
281+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Release|x86.ActiveCfg = Release|Any CPU
282+
{B837B3ED-83CE-446F-A4E5-44CB06AA6505}.Release|x86.Build.0 = Release|Any CPU
283+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
284+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Debug|Any CPU.Build.0 = Debug|Any CPU
285+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Debug|x64.ActiveCfg = Debug|Any CPU
286+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Debug|x64.Build.0 = Debug|Any CPU
287+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Debug|x86.ActiveCfg = Debug|Any CPU
288+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Debug|x86.Build.0 = Debug|Any CPU
289+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Release|Any CPU.ActiveCfg = Release|Any CPU
290+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Release|Any CPU.Build.0 = Release|Any CPU
291+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Release|x64.ActiveCfg = Release|Any CPU
292+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Release|x64.Build.0 = Release|Any CPU
293+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Release|x86.ActiveCfg = Release|Any CPU
294+
{E011A3B2-3D96-48E3-AF5F-DA544FF5C5FE}.Release|x86.Build.0 = Release|Any CPU
295+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
296+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Debug|Any CPU.Build.0 = Debug|Any CPU
297+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Debug|x64.ActiveCfg = Debug|Any CPU
298+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Debug|x64.Build.0 = Debug|Any CPU
299+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Debug|x86.ActiveCfg = Debug|Any CPU
300+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Debug|x86.Build.0 = Debug|Any CPU
301+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Release|Any CPU.ActiveCfg = Release|Any CPU
302+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Release|Any CPU.Build.0 = Release|Any CPU
303+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Release|x64.ActiveCfg = Release|Any CPU
304+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Release|x64.Build.0 = Release|Any CPU
305+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Release|x86.ActiveCfg = Release|Any CPU
306+
{554A6833-1E72-41B4-AAC1-C19371EC061B}.Release|x86.Build.0 = Release|Any CPU
265307
{54AAFE43-FA5F-485A-AD40-0240165FC633}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
266308
{54AAFE43-FA5F-485A-AD40-0240165FC633}.Debug|Any CPU.Build.0 = Debug|Any CPU
267309
{54AAFE43-FA5F-485A-AD40-0240165FC633}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -286,6 +328,18 @@ Global
286328
{A6A162DF-9FBB-4C2A-913F-FD5FED35A09B}.Release|x64.Build.0 = Release|Any CPU
287329
{A6A162DF-9FBB-4C2A-913F-FD5FED35A09B}.Release|x86.ActiveCfg = Release|Any CPU
288330
{A6A162DF-9FBB-4C2A-913F-FD5FED35A09B}.Release|x86.Build.0 = Release|Any CPU
331+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
332+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
333+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Debug|x64.ActiveCfg = Debug|Any CPU
334+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Debug|x64.Build.0 = Debug|Any CPU
335+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Debug|x86.ActiveCfg = Debug|Any CPU
336+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Debug|x86.Build.0 = Debug|Any CPU
337+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
338+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Release|Any CPU.Build.0 = Release|Any CPU
339+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Release|x64.ActiveCfg = Release|Any CPU
340+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Release|x64.Build.0 = Release|Any CPU
341+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Release|x86.ActiveCfg = Release|Any CPU
342+
{225B0790-C6B6-425C-9093-F359A4C635D3}.Release|x86.Build.0 = Release|Any CPU
289343
EndGlobalSection
290344
GlobalSection(SolutionProperties) = preSolution
291345
HideSolutionNode = FALSE
@@ -314,6 +368,9 @@ Global
314368
{A8F031E0-2BD5-4BAE-830A-60CBA76A047D} = {600D4BE2-FCE0-4684-AC6F-2DC829B395BA}
315369
{6EEA0E79-693F-4D4F-B55B-DB0C64EBDA45} = {600D4BE2-FCE0-4684-AC6F-2DC829B395BA}
316370
{7AA3516E-60F5-4969-878F-4E3DCF3E63A3} = {A8F031E0-2BD5-4BAE-830A-60CBA76A047D}
371+
{554A6833-1E72-41B4-AAC1-C19371EC061B} = {BEFD8748-2467-45F9-A4AD-B450B12D5F78}
372+
{24AB1F5A-4996-4DDA-87E0-B82B3A24C13F} = {B0C25450-74BF-40C2-9E02-09AADBAE2C2F}
373+
{225B0790-C6B6-425C-9093-F359A4C635D3} = {24AB1F5A-4996-4DDA-87E0-B82B3A24C13F}
317374
EndGlobalSection
318375
GlobalSection(ExtensibilityGlobals) = postSolution
319376
SolutionGuid = {C5B9895C-9DF8-4557-8D44-7D0C4C31F86E}

Packages.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
<PackageReference Update="FsToolkit.ErrorHandling" Version="$(FsToolkitVersion)" />
2020
<PackageReference Update="FsToolkit.ErrorHandling.TaskResult" Version="$(FsToolkitVersion)" />
2121
<PackageReference Update="Microsoft.Extensions.Http" Version="$(MicrosoftExtensionsVersion)" />
22+
<PackageReference Update="Microsoft.Extensions.Logging.Abstractions" Version="$(MicrosoftExtensionsVersion)" />
2223
<PackageReference Update="Microsoft.NETCore.Platforms" Version="$(SystemVersion)" />
2324
<PackageReference Update="NuGet.CommandLine" Version="1.*" />
2425
<PackageReference Update="System.CodeDom" Version="$(SystemVersion)" />

Prepare template project for packing.ps1

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ $version = $dirBuildTargets.SelectSingleNode("//PropertyGroup[@Label='NuGet']/Ve
99

1010
[xml]$fsharpPackages = @"
1111
<ItemGroup Label="PackageReferences">
12+
<PackageReference Include="FSharp.Data.GraphQL.Server.AspNetCore" Version="$($version)" />
1213
<PackageReference Include="FSharp.Data.GraphQL.Server.Middleware" Version="$($version)" />
1314
<PackageReference Include="FSharp.Data.GraphQL.Server.Relay" Version="$($version)" />
1415
<PackageReference Include="FSharp.Data.GraphQL.Server" Version="$($version)" />

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ let reply = executor.AsyncExecute(Parser.parse "{ firstName, lastName }", johnSn
4949

5050
It's type safe. Things like invalid fields or invalid return types will be checked at compile time.
5151

52+
### ASP.NET / Giraffe / WebSocket (for GraphQL subscriptions) usage
53+
54+
See the [AspNetCore/README.md](src/FSharp.Data.GraphQL.Server.AspNetCore/README.md)
55+
5256
## Demos
5357

5458
### GraphiQL client

build/Program.fs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -299,6 +299,9 @@ Target.create PackSharedTarget <| fun _ -> pack "Shared"
299299
let [<Literal>] PackServerTarget = "PackServer"
300300
Target.create PackServerTarget <| fun _ -> pack "Server"
301301

302+
let [<Literal>] PackServerAspNetCore = "PackServerAspNetCore"
303+
Target.create "PackServerAspNetCore" <| fun _ -> pack "Server.AspNetCore"
304+
302305
let [<Literal>] PackClientTarget = "PackClient"
303306
Target.create PackClientTarget <| fun _ -> pack "Client"
304307

@@ -314,6 +317,9 @@ Target.create PushSharedTarget <| fun _ -> push "Shared"
314317
let [<Literal>] PushServerTarget = "PushServer"
315318
Target.create PushServerTarget <| fun _ -> push "Server"
316319

320+
let [<Literal>] PushServerAspNetCore = "PushServerAspNetCore"
321+
Target.create "PushServerAspNetCore" <| fun _ -> push "Server.AspNetCore"
322+
317323
let [<Literal>] PushClientTarget = "PushClient"
318324
Target.create PushClientTarget <| fun _ -> push "Client"
319325

@@ -352,6 +358,8 @@ PackSharedTarget
352358
==> PushClientTarget
353359
==> PackServerTarget
354360
==> PushServerTarget
361+
==> PackServerAspNetCore
362+
==> PushServerAspNetCore
355363
==> PackMiddlewareTarget
356364
==> PushMiddlewareTarget
357365
==> PackRelayTarget

0 commit comments

Comments
 (0)