fix cors for development, add some forgottend migration

This commit is contained in:
Вячеслав 2025-05-08 23:58:13 +05:00
parent d7734cb68a
commit 251810c973
2 changed files with 323 additions and 0 deletions

View file

@ -92,6 +92,19 @@ public class Program
c.IncludeXmlComments(filePath); c.IncludeXmlComments(filePath);
}); });
builder.Services.AddCors(options =>
{
options.AddPolicy("AllowAll",
policyBuilder =>
{
policyBuilder
.AllowAnyOrigin()
.AllowAnyHeader()
.AllowAnyMethod()
.SetIsOriginAllowedToAllowWildcardSubdomains();
});
});
var app = builder.Build(); var app = builder.Build();
if (app.Environment.IsDevelopment()) if (app.Environment.IsDevelopment())
@ -102,6 +115,8 @@ public class Program
options.SwaggerEndpoint("/api/swagger/v1/swagger.json", "Survey Backend V1"); options.SwaggerEndpoint("/api/swagger/v1/swagger.json", "Survey Backend V1");
options.RoutePrefix = "api/swagger"; options.RoutePrefix = "api/swagger";
}); });
app.UseCors("AllowAll");
} }
app.UseMiddleware<ExceptionsMiddleware>(); app.UseMiddleware<ExceptionsMiddleware>();

View file

@ -0,0 +1,308 @@
// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using SurveyBackend.Infrastructure.Data;
#nullable disable
namespace SurveyBackend.Infrastructure.Data.Migrations
{
[DbContext(typeof(ApplicationDbContext))]
[Migration("20250420143302_Changing questions logic")]
partial class Changingquestionslogic
{
/// <inheritdoc />
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "8.0.15");
modelBuilder.Entity("GroupUser", b =>
{
b.Property<int>("GroupsId")
.HasColumnType("INTEGER");
b.Property<int>("UsersId")
.HasColumnType("INTEGER");
b.HasKey("GroupsId", "UsersId");
b.HasIndex("UsersId");
b.ToTable("GroupUser");
});
modelBuilder.Entity("SurveyBackend.Core.Models.Group", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Label")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Id");
b.ToTable("Groups");
});
modelBuilder.Entity("SurveyBackend.Core.Models.User", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Email")
.IsRequired()
.HasColumnType("TEXT");
b.Property<string>("FirstName")
.IsRequired()
.HasColumnType("TEXT");
b.Property<string>("LastName")
.IsRequired()
.HasColumnType("TEXT");
b.Property<string>("Password")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Id");
b.ToTable("Users");
});
modelBuilder.Entity("SurveyLib.Core.Models.Answer", b =>
{
b.Property<int>("CompletionId")
.HasColumnType("INTEGER");
b.Property<int>("QuestionId")
.HasColumnType("INTEGER");
b.Property<string>("AnswerText")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("CompletionId", "QuestionId");
b.HasIndex("QuestionId");
b.ToTable("Answers");
});
modelBuilder.Entity("SurveyLib.Core.Models.AnswerVariant", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<int>("QuestionId")
.HasColumnType("INTEGER");
b.Property<string>("Text")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("QuestionId");
b.ToTable("AnswerVariant");
});
modelBuilder.Entity("SurveyLib.Core.Models.Completion", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<DateTime>("FinishedAt")
.HasColumnType("TEXT");
b.Property<int>("SurveyId")
.HasColumnType("INTEGER");
b.HasKey("Id");
b.HasIndex("SurveyId");
b.ToTable("Completions");
});
modelBuilder.Entity("SurveyLib.Core.Models.QuestionBase", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Discriminator")
.IsRequired()
.HasMaxLength(34)
.HasColumnType("TEXT");
b.Property<int>("SurveyId")
.HasColumnType("INTEGER");
b.Property<string>("Title")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("SurveyId");
b.ToTable("Questions");
b.HasDiscriminator().HasValue("QuestionBase");
b.UseTphMappingStrategy();
});
modelBuilder.Entity("SurveyLib.Core.Models.Survey", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<int?>("CreatedBy")
.HasColumnType("INTEGER");
b.Property<string>("Description")
.IsRequired()
.HasColumnType("TEXT");
b.Property<string>("Title")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("CreatedBy");
b.ToTable("Surveys");
});
modelBuilder.Entity("SurveyLib.Core.Models.QuestionVariants.MultipleAnswerQuestion", b =>
{
b.HasBaseType("SurveyLib.Core.Models.QuestionBase");
b.HasDiscriminator().HasValue("MultipleAnswerQuestion");
});
modelBuilder.Entity("SurveyLib.Core.Models.QuestionVariants.SingleAnswerQuestion", b =>
{
b.HasBaseType("SurveyLib.Core.Models.QuestionBase");
b.HasDiscriminator().HasValue("SingleAnswerQuestion");
});
modelBuilder.Entity("SurveyLib.Core.Models.QuestionVariants.TextQuestion", b =>
{
b.HasBaseType("SurveyLib.Core.Models.QuestionBase");
b.HasDiscriminator().HasValue("TextQuestion");
});
modelBuilder.Entity("GroupUser", b =>
{
b.HasOne("SurveyBackend.Core.Models.Group", null)
.WithMany()
.HasForeignKey("GroupsId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("SurveyBackend.Core.Models.User", null)
.WithMany()
.HasForeignKey("UsersId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("SurveyLib.Core.Models.Answer", b =>
{
b.HasOne("SurveyLib.Core.Models.Completion", "Completion")
.WithMany("Answers")
.HasForeignKey("CompletionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("SurveyLib.Core.Models.QuestionBase", "Question")
.WithMany("Answers")
.HasForeignKey("QuestionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Completion");
b.Navigation("Question");
});
modelBuilder.Entity("SurveyLib.Core.Models.AnswerVariant", b =>
{
b.HasOne("SurveyLib.Core.Models.QuestionBase", "Question")
.WithMany("AnswerVariants")
.HasForeignKey("QuestionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Question");
});
modelBuilder.Entity("SurveyLib.Core.Models.Completion", b =>
{
b.HasOne("SurveyLib.Core.Models.Survey", "Survey")
.WithMany("Completions")
.HasForeignKey("SurveyId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Survey");
});
modelBuilder.Entity("SurveyLib.Core.Models.QuestionBase", b =>
{
b.HasOne("SurveyLib.Core.Models.Survey", "Survey")
.WithMany("Questions")
.HasForeignKey("SurveyId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Survey");
});
modelBuilder.Entity("SurveyLib.Core.Models.Survey", b =>
{
b.HasOne("SurveyBackend.Core.Models.User", null)
.WithMany()
.HasForeignKey("CreatedBy")
.OnDelete(DeleteBehavior.SetNull);
});
modelBuilder.Entity("SurveyLib.Core.Models.Completion", b =>
{
b.Navigation("Answers");
});
modelBuilder.Entity("SurveyLib.Core.Models.QuestionBase", b =>
{
b.Navigation("AnswerVariants");
b.Navigation("Answers");
});
modelBuilder.Entity("SurveyLib.Core.Models.Survey", b =>
{
b.Navigation("Completions");
b.Navigation("Questions");
});
#pragma warning restore 612, 618
}
}
}