mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-04-24 18:04:52 +08:00
CodeFirst Support Column Description
This commit is contained in:
parent
76c87d796f
commit
0f99c6f20a
@ -6,10 +6,12 @@ using System.Text;
|
||||
|
||||
namespace OrmTest.Demo
|
||||
{
|
||||
[SugarTable("CodeTable", " table CodeTable")]
|
||||
public class CodeTable
|
||||
{
|
||||
|
||||
[SugarColumn(IsNullable =false ,IsPrimaryKey =true,IsIdentity =true)]
|
||||
|
||||
[SugarColumn(IsNullable =false ,IsPrimaryKey =true,IsIdentity =true,ColumnDescription ="XXhaha primary key!!")]
|
||||
public int Id { get; set; }
|
||||
[SugarColumn(Length = 21,OldColumnName = "Name2")]
|
||||
public string Name{ get; set; }
|
||||
|
@ -73,6 +73,8 @@ namespace SqlSugar
|
||||
ExistLogic(entityInfo);
|
||||
else
|
||||
NoExistLogic(entityInfo);
|
||||
|
||||
this.Context.DbMaintenance.AddRemark(entityInfo);
|
||||
}
|
||||
public virtual void NoExistLogic(EntityInfo entityInfo)
|
||||
{
|
||||
|
@ -60,6 +60,44 @@ namespace SqlSugar
|
||||
protected abstract string CreateTableNotNull { get; }
|
||||
protected abstract string CreateTablePirmaryKey { get; }
|
||||
protected abstract string CreateTableIdentity { get; }
|
||||
|
||||
public virtual bool AddRemark(EntityInfo entity)
|
||||
{
|
||||
var db = this.Context;
|
||||
var columns = entity.Columns.Where(it => it.IsIgnore == false).ToList();
|
||||
|
||||
foreach (var item in columns)
|
||||
{
|
||||
if (item.ColumnDescription != null)
|
||||
{
|
||||
//column remak
|
||||
if (db.DbMaintenance.IsAnyColumnRemark(item.DbColumnName, item.DbTableName))
|
||||
{
|
||||
db.DbMaintenance.DeleteColumnRemark(item.DbColumnName, item.DbTableName);
|
||||
db.DbMaintenance.AddColumnRemark(item.DbColumnName, item.DbTableName, item.ColumnDescription);
|
||||
}
|
||||
else
|
||||
{
|
||||
db.DbMaintenance.AddColumnRemark(item.DbColumnName, item.DbTableName, item.ColumnDescription);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//table remak
|
||||
if (entity.TableDescription != null)
|
||||
{
|
||||
if (db.DbMaintenance.IsAnyTableRemark(entity.DbTableName))
|
||||
{
|
||||
db.DbMaintenance.DeleteTableRemark(entity.DbTableName);
|
||||
db.DbMaintenance.AddTableRemark(entity.DbTableName, entity.TableDescription);
|
||||
}
|
||||
else
|
||||
{
|
||||
db.DbMaintenance.AddTableRemark(entity.DbTableName, entity.TableDescription);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -27,6 +27,7 @@ namespace SqlSugar
|
||||
{
|
||||
var sugarTable = (SugarTable)sugarAttributeInfo;
|
||||
result.DbTableName = sugarTable.TableName;
|
||||
result.TableDescription = sugarTable.TableDescription;
|
||||
}
|
||||
if (this.Context.Context.CurrentConnectionConfig.ConfigureExternalServices != null && this.Context.CurrentConnectionConfig.ConfigureExternalServices.EntityNameService != null) {
|
||||
this.Context.CurrentConnectionConfig.ConfigureExternalServices.EntityNameService(type,result);
|
||||
|
@ -12,6 +12,7 @@ namespace SqlSugar
|
||||
private string _DbTableName;
|
||||
public string EntityName { get; set; }
|
||||
public string DbTableName { get { return _DbTableName == null ? EntityName : _DbTableName; } set { _DbTableName = value; } }
|
||||
public string TableDescription { get; set; }
|
||||
public Type Type { get; set; }
|
||||
public List<EntityColumnInfo> Columns { get; set; }
|
||||
}
|
||||
|
@ -10,9 +10,15 @@ namespace SqlSugar
|
||||
public class SugarTable : Attribute {
|
||||
private SugarTable() { }
|
||||
public string TableName { get; set; }
|
||||
public string TableDescription { get; set; }
|
||||
public SugarTable(string tableName) {
|
||||
this.TableName = tableName;
|
||||
}
|
||||
public SugarTable(string tableName,string tableDescription)
|
||||
{
|
||||
this.TableName = tableName;
|
||||
this.TableDescription = tableName;
|
||||
}
|
||||
}
|
||||
[AttributeUsage(AttributeTargets.Property , Inherited = true)]
|
||||
public class SugarColumn : Attribute
|
||||
|
@ -37,6 +37,7 @@ namespace SqlSugar
|
||||
bool BackupTable(string oldTableName, string newTableName, int maxBackupDataRows = int.MaxValue);
|
||||
bool DropColumn(string tableName,string columnName);
|
||||
bool RenameColumn(string tableName, string oldColumnName, string newColumnName);
|
||||
bool AddRemark(EntityInfo entity);
|
||||
bool AddColumnRemark(string columnName,string tableName,string description);
|
||||
bool DeleteColumnRemark(string columnName, string tableName);
|
||||
bool IsAnyColumnRemark(string columnName, string tableName);
|
||||
|
Loading…
Reference in New Issue
Block a user