shoc-backend/SeaHavenIndustries.sln
Adam Moussa 1f3972ae49
Add calendar/events backend API (#8)
* Align EntityFrameworkCore.SqlServer and Tools to 8.0.8

* Add calendar/events backend API

Cherry-picked from main-backup (19994ef); scratch notes file removed.

* Require authentication on CalendarController

Security review found [Authorize] commented out, leaving all 6 calendar
endpoints anonymous. Enforce auth to match the API convention (17/23
controllers).

* Add CalendarController unit tests (xUnit + EF InMemory)
2026-06-22 18:46:46 -04:00

55 lines
3.6 KiB
Text

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.9.34728.123
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SeaHavenIndustries", "SeaHavenIndustries\SeaHavenIndustries.csproj", "{E403220B-BA4B-4CD8-AE83-CCB8B58B72C3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Data.SeaHavenIndustries", "Data.SeaHavenIndustries\Data.SeaHavenIndustries.csproj", "{EC9E596B-E9B3-48E8-8FAF-E1E46BF17714}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Api.SeaHavenIndustries", "Api.SeaHavenIndustries\Api.SeaHavenIndustries.csproj", "{68A98A85-CD53-44BE-8736-B1CD7A8C5193}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SeaHaven.Services", "SeaHaven.Services\SeaHaven.Services.csproj", "{DFF11D84-FEA1-42D1-99FF-1113133160CA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SeaHaven.DataServices", "SeaHaven.DataServices\SeaHaven.DataServices.csproj", "{60DF3943-9BC3-4444-8E7A-EEC34DDC7806}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Api.SeaHavenIndustries.Tests", "Api.SeaHavenIndustries.Tests\Api.SeaHavenIndustries.Tests.csproj", "{1222E2E5-2FB0-4AA8-842C-0D77CFBA5E45}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{E403220B-BA4B-4CD8-AE83-CCB8B58B72C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E403220B-BA4B-4CD8-AE83-CCB8B58B72C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E403220B-BA4B-4CD8-AE83-CCB8B58B72C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E403220B-BA4B-4CD8-AE83-CCB8B58B72C3}.Release|Any CPU.Build.0 = Release|Any CPU
{EC9E596B-E9B3-48E8-8FAF-E1E46BF17714}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EC9E596B-E9B3-48E8-8FAF-E1E46BF17714}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EC9E596B-E9B3-48E8-8FAF-E1E46BF17714}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EC9E596B-E9B3-48E8-8FAF-E1E46BF17714}.Release|Any CPU.Build.0 = Release|Any CPU
{68A98A85-CD53-44BE-8736-B1CD7A8C5193}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{68A98A85-CD53-44BE-8736-B1CD7A8C5193}.Debug|Any CPU.Build.0 = Debug|Any CPU
{68A98A85-CD53-44BE-8736-B1CD7A8C5193}.Release|Any CPU.ActiveCfg = Release|Any CPU
{68A98A85-CD53-44BE-8736-B1CD7A8C5193}.Release|Any CPU.Build.0 = Release|Any CPU
{DFF11D84-FEA1-42D1-99FF-1113133160CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DFF11D84-FEA1-42D1-99FF-1113133160CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DFF11D84-FEA1-42D1-99FF-1113133160CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DFF11D84-FEA1-42D1-99FF-1113133160CA}.Release|Any CPU.Build.0 = Release|Any CPU
{60DF3943-9BC3-4444-8E7A-EEC34DDC7806}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{60DF3943-9BC3-4444-8E7A-EEC34DDC7806}.Debug|Any CPU.Build.0 = Debug|Any CPU
{60DF3943-9BC3-4444-8E7A-EEC34DDC7806}.Release|Any CPU.ActiveCfg = Release|Any CPU
{60DF3943-9BC3-4444-8E7A-EEC34DDC7806}.Release|Any CPU.Build.0 = Release|Any CPU
{1222E2E5-2FB0-4AA8-842C-0D77CFBA5E45}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1222E2E5-2FB0-4AA8-842C-0D77CFBA5E45}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1222E2E5-2FB0-4AA8-842C-0D77CFBA5E45}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1222E2E5-2FB0-4AA8-842C-0D77CFBA5E45}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BD5E426E-62DA-4E07-904C-C7485679142D}
EndGlobalSection
EndGlobal