mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2026-01-23 21:32:04 +08:00
Sqlite CodeFirst
This commit is contained in:
@@ -13,6 +13,7 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
if (entityInfo.Columns.Where(it => it.IsPrimarykey).Count() > 1)
|
if (entityInfo.Columns.Where(it => it.IsPrimarykey).Count() > 1)
|
||||||
{
|
{
|
||||||
|
AddColumn(entityInfo);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,6 +91,26 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void AddColumn(EntityInfo entityInfo)
|
||||||
|
{
|
||||||
|
var tableName2 = GetTableName(entityInfo);
|
||||||
|
var dbColumns2 = this.Context.DbMaintenance.GetColumnInfosByTableName(tableName2, false);
|
||||||
|
var entityColumns2 = entityInfo.Columns.Where(it => it.IsIgnore == false).ToList();
|
||||||
|
ConvertColumns(dbColumns2);
|
||||||
|
var addColumns2 = entityColumns2
|
||||||
|
.Where(ec => ec.OldDbColumnName.IsNullOrEmpty() || !dbColumns2.Any(dc => dc.DbColumnName.Equals(ec.OldDbColumnName, StringComparison.CurrentCultureIgnoreCase)))
|
||||||
|
.Where(ec => !dbColumns2.Any(dc => ec.DbColumnName.Equals(dc.DbColumnName, StringComparison.CurrentCultureIgnoreCase))).ToList();
|
||||||
|
foreach (var item in addColumns2)
|
||||||
|
{
|
||||||
|
if (item.IsPrimarykey || item.IsIdentity)
|
||||||
|
{
|
||||||
|
Check.ExceptionEasy("Multiple primary keys cannot be modified", "多主键不能修改");
|
||||||
|
}
|
||||||
|
this.Context.DbMaintenance.AddColumn(tableName2, EntityColumnToDbColumn(entityInfo, tableName2, item));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public override void NoExistLogic(EntityInfo entityInfo)
|
public override void NoExistLogic(EntityInfo entityInfo)
|
||||||
{
|
{
|
||||||
var tableName = GetTableName(entityInfo);
|
var tableName = GetTableName(entityInfo);
|
||||||
|
|||||||
Reference in New Issue
Block a user