Skip to content

Commit f5a6266

Browse files
author
Daniel Mititelu
committed
Add DataAccess Project and EF
1 parent 073dc72 commit f5a6266

11 files changed

+2201
-2024
lines changed

TodoApp.DataAccess/AppDbContext.cs

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
using Microsoft.EntityFrameworkCore;
2+
using TodoApp.Entity;
3+
4+
namespace TodoApp.DataAccess
5+
{
6+
public class AppDbContext: DbContext
7+
{
8+
public virtual DbSet<User> User { get; set; }
9+
10+
public AppDbContext(DbContextOptions<AppDbContext> options)
11+
: base(options) { }
12+
13+
protected override void OnModelCreating(ModelBuilder modelBuilder)
14+
{
15+
16+
}
17+
}
18+
}

TodoApp.DataAccess/Migrations/20180816190716_TodoAppDb.Designer.cs

+40
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
using Microsoft.EntityFrameworkCore.Metadata;
2+
using Microsoft.EntityFrameworkCore.Migrations;
3+
4+
namespace TodoApp.DataAccess.Migrations
5+
{
6+
public partial class TodoAppDb : Migration
7+
{
8+
protected override void Up(MigrationBuilder migrationBuilder)
9+
{
10+
migrationBuilder.CreateTable(
11+
name: "User",
12+
columns: table => new
13+
{
14+
UserId = table.Column<int>(nullable: false)
15+
.Annotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn),
16+
Email = table.Column<string>(nullable: true),
17+
EncryptedPassword = table.Column<string>(nullable: true)
18+
},
19+
constraints: table =>
20+
{
21+
table.PrimaryKey("PK_User", x => x.UserId);
22+
});
23+
}
24+
25+
protected override void Down(MigrationBuilder migrationBuilder)
26+
{
27+
migrationBuilder.DropTable(
28+
name: "User");
29+
}
30+
}
31+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// <auto-generated />
2+
using Microsoft.EntityFrameworkCore;
3+
using Microsoft.EntityFrameworkCore.Infrastructure;
4+
using Microsoft.EntityFrameworkCore.Metadata;
5+
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
6+
using TodoApp.DataAccess;
7+
8+
namespace TodoApp.DataAccess.Migrations
9+
{
10+
[DbContext(typeof(AppDbContext))]
11+
partial class AppDbContextModelSnapshot : ModelSnapshot
12+
{
13+
protected override void BuildModel(ModelBuilder modelBuilder)
14+
{
15+
#pragma warning disable 612, 618
16+
modelBuilder
17+
.HasAnnotation("ProductVersion", "2.1.1-rtm-30846")
18+
.HasAnnotation("Relational:MaxIdentifierLength", 128)
19+
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
20+
21+
modelBuilder.Entity("TodoApp.Entity.User", b =>
22+
{
23+
b.Property<int>("UserId")
24+
.ValueGeneratedOnAdd()
25+
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
26+
27+
b.Property<string>("Email");
28+
29+
b.Property<string>("EncryptedPassword");
30+
31+
b.HasKey("UserId");
32+
33+
b.ToTable("User");
34+
});
35+
#pragma warning restore 612, 618
36+
}
37+
}
38+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<TargetFramework>netcoreapp2.1</TargetFramework>
5+
</PropertyGroup>
6+
7+
<ItemGroup>
8+
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.1.1" />
9+
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.1" />
10+
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.1" />
11+
</ItemGroup>
12+
13+
<ItemGroup>
14+
<ProjectReference Include="..\TodoApp.Entity\TodoApp.Entity.csproj" />
15+
</ItemGroup>
16+
17+
</Project>

TodoApp.Entity/User.cs

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Text;
4+
5+
namespace TodoApp.Entity
6+
{
7+
public class User
8+
{
9+
public int UserId { get; set; }
10+
public string Email { get; set; }
11+
public string EncryptedPassword { get; set; }
12+
}
13+
}
+7-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<TargetFramework>netcoreapp2.1</TargetFramework>
55
</PropertyGroup>
66

7+
<ItemGroup>
8+
<ProjectReference Include="..\TodoApp.DataAccess\TodoApp.DataAccess.csproj" />
9+
<ProjectReference Include="..\TodoApp.DTO\TodoApp.DTO.csproj" />
10+
<ProjectReference Include="..\TodoApp.Entity\TodoApp.Entity.csproj" />
11+
</ItemGroup>
12+
713
</Project>

TodoApp.sln

+8-2
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,13 @@ VisualStudioVersion = 15.0.28010.0
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TodoApp", "TodoApp\TodoApp.csproj", "{CE5F2E38-CE87-4146-983E-AA5E9B91A4EA}"
77
EndProject
8-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TodoApp.DTO", "TodoApp.DTO\TodoApp.DTO.csproj", "{8FEAFC23-2733-4D2F-905D-939A3F58F724}"
8+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TodoApp.DTO", "TodoApp.DTO\TodoApp.DTO.csproj", "{8FEAFC23-2733-4D2F-905D-939A3F58F724}"
99
EndProject
1010
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TodoApp.Entity", "TodoApp.Entity\TodoApp.Entity.csproj", "{CAF9707C-3FB8-4A05-8887-DBA1E793EE36}"
1111
EndProject
12-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TodoApp.Services", "TodoApp.Services\TodoApp.Services.csproj", "{8D629D94-FE41-4896-8226-AAF06E048CE0}"
12+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TodoApp.Services", "TodoApp.Services\TodoApp.Services.csproj", "{8D629D94-FE41-4896-8226-AAF06E048CE0}"
13+
EndProject
14+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TodoApp.DataAccess", "TodoApp.DataAccess\TodoApp.DataAccess.csproj", "{C61A3A08-28D8-4B57-BDBE-4B9784779D71}"
1315
EndProject
1416
Global
1517
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -33,6 +35,10 @@ Global
3335
{8D629D94-FE41-4896-8226-AAF06E048CE0}.Debug|Any CPU.Build.0 = Debug|Any CPU
3436
{8D629D94-FE41-4896-8226-AAF06E048CE0}.Release|Any CPU.ActiveCfg = Release|Any CPU
3537
{8D629D94-FE41-4896-8226-AAF06E048CE0}.Release|Any CPU.Build.0 = Release|Any CPU
38+
{C61A3A08-28D8-4B57-BDBE-4B9784779D71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
39+
{C61A3A08-28D8-4B57-BDBE-4B9784779D71}.Debug|Any CPU.Build.0 = Debug|Any CPU
40+
{C61A3A08-28D8-4B57-BDBE-4B9784779D71}.Release|Any CPU.ActiveCfg = Release|Any CPU
41+
{C61A3A08-28D8-4B57-BDBE-4B9784779D71}.Release|Any CPU.Build.0 = Release|Any CPU
3642
EndGlobalSection
3743
GlobalSection(SolutionProperties) = preSolution
3844
HideSolutionNode = FALSE

0 commit comments

Comments
 (0)