First commit that builds.
This commit is contained in:
32
code/MessengerBroker.Db/BrokerDbContext.cs
Normal file
32
code/MessengerBroker.Db/BrokerDbContext.cs
Normal file
@ -0,0 +1,32 @@
|
||||
using MessengerBroker.Db.Model;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace MessengerBroker.Db
|
||||
{
|
||||
public class BrokerDbContext : DbContext
|
||||
{
|
||||
private string connectionString;
|
||||
|
||||
public DbSet<Sync> Syncs { get; }
|
||||
|
||||
public DbSet<User> Users { get; }
|
||||
|
||||
public DbSet<Message> Messages { get; }
|
||||
|
||||
public BrokerDbContext(string connectionString)
|
||||
{
|
||||
this.connectionString = connectionString;
|
||||
}
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
base.OnModelCreating(modelBuilder);
|
||||
}
|
||||
|
||||
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
||||
{
|
||||
base.OnConfiguring(optionsBuilder);
|
||||
optionsBuilder.UseSqlServer(this.connectionString);
|
||||
}
|
||||
}
|
||||
}
|
||||
14
code/MessengerBroker.Db/MessengerBroker.Db.csproj
Normal file
14
code/MessengerBroker.Db/MessengerBroker.Db.csproj
Normal file
@ -0,0 +1,14 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net9.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.6" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="9.0.6" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
15
code/MessengerBroker.Db/Model/Contracts/IForeignEntity.cs
Normal file
15
code/MessengerBroker.Db/Model/Contracts/IForeignEntity.cs
Normal file
@ -0,0 +1,15 @@
|
||||
namespace MessengerBroker.Db.Model.Contracts
|
||||
{
|
||||
public interface IForeignEntity
|
||||
{
|
||||
Guid Id { get; }
|
||||
|
||||
Guid BrokerId { get; }
|
||||
|
||||
bool IsDeleted { get; }
|
||||
|
||||
Sync? FirstSync { get; }
|
||||
|
||||
Sync? LastSync { get; }
|
||||
}
|
||||
}
|
||||
9
code/MessengerBroker.Db/Model/Message.cs
Normal file
9
code/MessengerBroker.Db/Model/Message.cs
Normal file
@ -0,0 +1,9 @@
|
||||
namespace MessengerBroker.Db.Model
|
||||
{
|
||||
public class Message
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public Guid BrokerId { get; set; }
|
||||
}
|
||||
}
|
||||
15
code/MessengerBroker.Db/Model/Sync.cs
Normal file
15
code/MessengerBroker.Db/Model/Sync.cs
Normal file
@ -0,0 +1,15 @@
|
||||
namespace MessengerBroker.Db.Model
|
||||
{
|
||||
public class Sync
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
public Guid BrokerId { get; set; }
|
||||
|
||||
public DateTime StartedUtc { get; set; }
|
||||
|
||||
public DateTime? FinishedUtc { get; set; }
|
||||
|
||||
public long? Changes { get; set; }
|
||||
}
|
||||
}
|
||||
11
code/MessengerBroker.Db/Model/User.cs
Normal file
11
code/MessengerBroker.Db/Model/User.cs
Normal file
@ -0,0 +1,11 @@
|
||||
using MessengerBroker.Db.Model.Contracts;
|
||||
|
||||
namespace MessengerBroker.Db.Model
|
||||
{
|
||||
public class User
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
|
||||
public Guid BrokerId { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user