diff --git a/TurboSamplePlugin.DesignTime/TurboSamplePlugin.DesignTime.csproj b/TurboSamplePlugin.DesignTime/TurboSamplePlugin.DesignTime.csproj
deleted file mode 100644
index 20875b2..0000000
--- a/TurboSamplePlugin.DesignTime/TurboSamplePlugin.DesignTime.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
- net9.0
- false
- false
- true
- false
-
-
-
-
-
-
-
-
-
-
-
diff --git a/TurboSamplePlugin.sln b/TurboSamplePlugin.sln
index 20990ec..6e5d83b 100644
--- a/TurboSamplePlugin.sln
+++ b/TurboSamplePlugin.sln
@@ -5,8 +5,6 @@ VisualStudioVersion = 17.8.34322.80
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TurboSamplePlugin", "TurboSamplePlugin\TurboSamplePlugin.csproj", "{24B90E2F-1A81-4D24-B47A-2DCAF8CA62BF}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TurboSamplePlugin.DesignTime", "TurboSamplePlugin.DesignTime\TurboSamplePlugin.DesignTime.csproj", "{5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -29,18 +27,6 @@ Global
{24B90E2F-1A81-4D24-B47A-2DCAF8CA62BF}.Release|x64.Build.0 = Release|Any CPU
{24B90E2F-1A81-4D24-B47A-2DCAF8CA62BF}.Release|x86.ActiveCfg = Release|Any CPU
{24B90E2F-1A81-4D24-B47A-2DCAF8CA62BF}.Release|x86.Build.0 = Release|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Debug|x64.ActiveCfg = Debug|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Debug|x64.Build.0 = Debug|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Debug|x86.ActiveCfg = Debug|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Debug|x86.Build.0 = Debug|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Release|Any CPU.Build.0 = Release|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Release|x64.ActiveCfg = Release|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Release|x64.Build.0 = Release|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Release|x86.ActiveCfg = Release|Any CPU
- {5EE7777B-A29F-4FF2-A030-1BA27FBBF17F}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/TurboSamplePlugin/Database/Migrations/20260205210952_Init.Designer.cs b/TurboSamplePlugin/Database/Migrations/20260205210952_Init.Designer.cs
new file mode 100644
index 0000000..7fa6635
--- /dev/null
+++ b/TurboSamplePlugin/Database/Migrations/20260205210952_Init.Designer.cs
@@ -0,0 +1,65 @@
+//
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using TurboSamplePlugin.Database;
+
+#nullable disable
+
+namespace TurboSamplePlugin.Migrations
+{
+ [DbContext(typeof(SampleDbContext))]
+ [Migration("20260205210952_Init")]
+ partial class Init
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "9.0.8")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
+
+ modelBuilder.Entity("TurboSamplePlugin.Database.SampleEntity", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
+
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+
+ b.Property("CreatedAt")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)")
+ .HasColumnName("created_at");
+
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("CreatedAt"));
+
+ b.Property("DeletedAt")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)")
+ .HasColumnName("deleted_at");
+
+ MySqlPropertyBuilderExtensions.UseMySqlComputedColumn(b.Property("DeletedAt"));
+
+ b.Property("UpdatedAt")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)")
+ .HasColumnName("updated_at");
+
+ MySqlPropertyBuilderExtensions.UseMySqlComputedColumn(b.Property("UpdatedAt"));
+
+ b.HasKey("Id");
+
+ b.ToTable("tsp_sample_entities");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/TurboSamplePlugin/Database/Migrations/20260205210952_Init.cs b/TurboSamplePlugin/Database/Migrations/20260205210952_Init.cs
new file mode 100644
index 0000000..5daad92
--- /dev/null
+++ b/TurboSamplePlugin/Database/Migrations/20260205210952_Init.cs
@@ -0,0 +1,45 @@
+using System;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace TurboSamplePlugin.Migrations
+{
+ ///
+ public partial class Init : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.AlterDatabase()
+ .Annotation("MySql:CharSet", "utf8mb4");
+
+ migrationBuilder.CreateTable(
+ name: "tsp_sample_entities",
+ columns: table => new
+ {
+ id = table.Column(type: "int", nullable: false)
+ .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
+ created_at = table.Column(type: "datetime(6)", nullable: false)
+ .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
+ updated_at = table.Column(type: "datetime(6)", nullable: false)
+ .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.ComputedColumn),
+ deleted_at = table.Column(type: "datetime(6)", nullable: true)
+ .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.ComputedColumn)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_tsp_sample_entities", x => x.id);
+ })
+ .Annotation("MySql:CharSet", "utf8mb4");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropTable(
+ name: "tsp_sample_entities");
+ }
+ }
+}
diff --git a/TurboSamplePlugin/Database/Migrations/SampleDbContextModelSnapshot.cs b/TurboSamplePlugin/Database/Migrations/SampleDbContextModelSnapshot.cs
new file mode 100644
index 0000000..03bacfb
--- /dev/null
+++ b/TurboSamplePlugin/Database/Migrations/SampleDbContextModelSnapshot.cs
@@ -0,0 +1,62 @@
+//
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using TurboSamplePlugin.Database;
+
+#nullable disable
+
+namespace TurboSamplePlugin.Migrations
+{
+ [DbContext(typeof(SampleDbContext))]
+ partial class SampleDbContextModelSnapshot : ModelSnapshot
+ {
+ protected override void BuildModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "9.0.8")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
+
+ modelBuilder.Entity("TurboSamplePlugin.Database.SampleEntity", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
+
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+
+ b.Property("CreatedAt")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)")
+ .HasColumnName("created_at");
+
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("CreatedAt"));
+
+ b.Property("DeletedAt")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)")
+ .HasColumnName("deleted_at");
+
+ MySqlPropertyBuilderExtensions.UseMySqlComputedColumn(b.Property("DeletedAt"));
+
+ b.Property("UpdatedAt")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)")
+ .HasColumnName("updated_at");
+
+ MySqlPropertyBuilderExtensions.UseMySqlComputedColumn(b.Property("UpdatedAt"));
+
+ b.HasKey("Id");
+
+ b.ToTable("tsp_sample_entities");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/TurboSamplePlugin.DesignTime/SampleDbContextFactory.cs b/TurboSamplePlugin/Database/SampleDbContextFactory.cs
similarity index 97%
rename from TurboSamplePlugin.DesignTime/SampleDbContextFactory.cs
rename to TurboSamplePlugin/Database/SampleDbContextFactory.cs
index 2be46fd..55f5b51 100644
--- a/TurboSamplePlugin.DesignTime/SampleDbContextFactory.cs
+++ b/TurboSamplePlugin/Database/SampleDbContextFactory.cs
@@ -22,7 +22,7 @@ public SampleDbContext CreateDbContext(string[] args)
services.AddSingleton(_ =>
JsonSerializer.Deserialize(
- File.ReadAllText("../TurboSamplePlugin/manifest.json")
+ File.ReadAllText("../manifest.json")
)!
);
services.AddSingleton(sp =>
diff --git a/TurboSamplePlugin/TurboSamplePlugin.csproj b/TurboSamplePlugin/TurboSamplePlugin.csproj
index e11c445..d4ddffa 100644
--- a/TurboSamplePlugin/TurboSamplePlugin.csproj
+++ b/TurboSamplePlugin/TurboSamplePlugin.csproj
@@ -7,13 +7,13 @@
false
-
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
@@ -21,35 +21,26 @@
-
-
-
-
-
-
+
+ ..\..\turbo-cloud\Turbo.Contracts\bin\Debug\net9.0\Turbo.Contracts.dll
+
+
+ ..\..\turbo-cloud\Turbo.Crypto\bin\Debug\net9.0\Turbo.Crypto.dll
+
+
+ ..\..\turbo-cloud\Turbo.Database\bin\Debug\net9.0\Turbo.Database.dll
+
+
+ ..\..\turbo-cloud\Turbo.Events\bin\Debug\net9.0\Turbo.Events.dll
+
+
+ ..\..\turbo-cloud\Turbo.Messages\bin\Debug\net9.0\Turbo.Messages.dll
+
+
+ ..\..\turbo-cloud\Turbo.Pipeline\bin\Debug\net9.0\Turbo.Pipeline.dll
+
+
+ ..\..\turbo-cloud\Turbo.Primitives\bin\Debug\net9.0\Turbo.Primitives.dll
+