37 ArgumentNullException.ThrowIfNull(options);
38 ArgumentNullException.ThrowIfNull(databaseConfiguration);
41 throw new InvalidOperationException($
"Invalid DatabaseType for {nameof(MySqlDatabaseContext)}!");
43 ServerVersion serverVersion;
44 if (!String.IsNullOrEmpty(databaseConfiguration.
ServerVersion))
46 serverVersion = ServerVersion.Parse(
53 serverVersion = ServerVersion.AutoDetect(databaseConfiguration.
ConnectionString);
60 mySqlOptions.TranslateParameterizedCollectionsToConstants();
61 mySqlOptions.EnableRetryOnFailure();
62 mySqlOptions.UseQuerySplittingBehavior(QuerySplittingBehavior.SingleQuery);
69 base.OnModelCreating(modelBuilder);
75 .MapMySqlTextField<ChatChannel>(x => x.Tag)
77 .MapMySqlTextField<CompileJob>(x => x.EngineVersion)
79 .MapMySqlTextField<CompileJob>(x => x.Output)
80 .MapMySqlTextField<
CompileJob>(x => x.RepositoryOrigin)
81 .MapMySqlTextField<DreamDaemonSettings>(x => x.AdditionalParameters)
83 .MapMySqlTextField<Instance>(x => x.
Name)
84 .MapMySqlTextField<
Instance>(x => x.Path)
85 .MapMySqlTextField<Instance>(x => x.SwarmIdentifer)
86 .MapMySqlTextField<
Job>(x => x.Description)
87 .MapMySqlTextField<Job>(x => x.ExceptionDetails)
89 .MapMySqlTextField<ReattachInformation>(x => x.AccessIdentifier)
91 .MapMySqlTextField<RepositorySettings>(x => x.AccessUser)
93 .MapMySqlTextField<RepositorySettings>(x => x.CommitterName)
95 .MapMySqlTextField<RevisionInformation>(x => x.OriginCommitSha)
96 .MapMySqlTextField<
TestMerge>(x => x.Author)
97 .MapMySqlTextField<TestMerge>(x => x.BodyAtMerge)
98 .MapMySqlTextField<
TestMerge>(x => x.Comment)
99 .MapMySqlTextField<TestMerge>(x => x.TargetCommitSha)
100 .MapMySqlTextField<
TestMerge>(x => x.TitleAtMerge)
101 .MapMySqlTextField<TestMerge>(x => x.Url)
102 .MapMySqlTextField<
User>(x => x.CanonicalName)
103 .MapMySqlTextField<User>(x => x.
Name)
104 .MapMySqlTextField<
User>(x => x.PasswordHash)
105 .MapMySqlTextField<User>(x => x.SystemIdentifier)