48 lines
2.2 KiB
Markdown
48 lines
2.2 KiB
Markdown
### 反向工程
|
|
|
|
1. 安装 dotnet tool install --global dotnet-ef
|
|
2. 安装包 Microsoft.EntityFrameworkCore.Design
|
|
3. 执行命令 dotnet ef dbcontext scaffold "Server=172.27.27.12;Database=TextGenerationTest;User Id=zpc;Password=zpc;TrustServerCertificate=true;" Microsoft.EntityFrameworkCore.SqlServer -o Models --force
|
|
|
|
dotnet ef dbcontext scaffold "Server=192.168.195.2;Database=MiaoYu;User Id=zpc;Password=zpc;TrustServerCertificate=true;" Microsoft.EntityFrameworkCore.SqlServer -o DbSqlServer/Db_MiaoYu/ --use-database-names --no-pluralize --force
|
|
|
|
1. dotnet ef dbcontext scaffold "Name=ConnectionStrings:SunnySports_SqlServer_Db_SunnySport" Microsoft.EntityFrameworkCore.SqlServer --no-pluralize --force --output-dir ../../0-core/SunnySports.Model/DbSqlServer/Db_SunnySports/ --use-database-names --project ../../0-core/SunnySports.Model/
|
|
|
|
dotnet ef dbcontext scaffold "Name=ConnectionStrings:SunnySports_SqlServer_Db_Student" Microsoft.EntityFrameworkCore.SqlServer --no-pluralize --force --output-dir ../../0-core/SunnySports.Model/DbSqlServer/Db_Student/ --use-database-names --project ../../0-core/SunnySports.Model/
|
|
|
|
## 自定义模板
|
|
|
|
1. dotnet new install Microsoft.EntityFrameworkCore.Templates
|
|
2. dotnet new ef-templates
|
|
|
|
## 开启事务
|
|
1. Read Uncommitted: 允许读取未提交的数据(脏读),几乎没有锁定。
|
|
2. Read Committed: 只能读取已提交的数据(默认隔离级别),在读取数据时会使用共享锁,防止脏读。
|
|
3. Repeatable Read: 确保在事务期间读取的数据一致,防止不可重复读,会对读取的数据使用锁。
|
|
4. Serializable: 最严格的隔离级别,确保事务之间完全隔离,防止幻读,会对整个范围进行锁定。
|
|
|
|
```C#
|
|
|
|
//using (var transaction = context.Database.BeginTransaction(System.Data.IsolationLevel.Serializable)) 事务等级
|
|
using (IDbContextTransaction transaction = context.Database.BeginTransaction())
|
|
{
|
|
try
|
|
{
|
|
// 执行一些数据库操作
|
|
|
|
context.SaveChanges();
|
|
|
|
|
|
context.SaveChanges();
|
|
|
|
// 提交事务
|
|
transaction.Commit();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
// 出现异常,回滚事务
|
|
transaction.Rollback();
|
|
}
|
|
}
|
|
```
|