开发代码生成功能

This commit is contained in:
izory
2021-09-07 21:52:44 +08:00
parent 18d8051d65
commit 85b0305cbc
11 changed files with 131 additions and 312 deletions

View File

@@ -1,79 +0,0 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace ZR.Model
{
/// <summary>
/// 表的字段
/// </summary>
public class DbFieldInfo
{
public string TableName { get; set; }
/// <summary>
/// 初始化
/// </summary>
public DbFieldInfo()
{
FieldName = string.Empty;
Description = string.Empty;
}
/// <summary>
/// 字段名称
/// </summary>
public string FieldName { get; set; }
/// <summary>
/// 描述
/// </summary>
public string Description { get; set; }
/// <summary>
/// 系统数据类型,如 int
/// </summary>
public string DataType
{
get;
set;
}
/// <summary>
/// 数据库里面存放的类型。
/// </summary>
public string FieldType { get; set; }
/// <summary>
/// 代表小数位精度。
/// </summary>
public long? FieldScale { get; set; }
/// <summary>
/// 数据精度仅数字类型有效总共多少位数字10进制
/// 在MySql里面代表了字段长度
/// </summary>
public long? FieldPrecision { get; set; }
/// <summary>
///
/// </summary>
public long? FieldMaxLength { get; set; }
/// <summary>
/// 可空
/// </summary>
public bool IsNullable { get; set; }
/// <summary>
/// 是否为主键字段
/// </summary>
public bool IsIdentity { get; set; }
/// <summary>
/// 【未用上】该字段是否自增
/// </summary>
public bool Increment { get; set; }
/// <summary>
/// 默认值
/// </summary>
public string FieldDefaultValue { get; set; }
}
}

View File

@@ -1,75 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ZR.Model
{
/// <summary>
/// 数据表的信息
/// </summary>
public class DbTableInfo
{
/// <summary>
/// 表格ID表的名称。
/// </summary>
public string TableName { get; set; }
/// <summary>
/// 表的别称,或者描述
/// </summary>
public string Description { get; set; }
/// <summary>
/// 字段列表
/// </summary>
public List<DbFieldInfo> Fileds { get; set; }
/// <summary>
/// 初始化
/// </summary>
public DbTableInfo()
{
Fileds = new List<DbFieldInfo>();
}
/// <summary>
/// 获取主键的名称列表。
/// </summary>
/// <returns></returns>
public List<string> GetIdentityList()
{
var list = Fileds.Where(x => x.IsIdentity);
if (list == null) return null;
return list.Select(x => x.FieldName).ToList();
}
/// <summary>
/// 获取主键字段列表
/// </summary>
/// <returns></returns>
public List<DbFieldInfo> GetIdentityFields()
{
var list = Fileds.Where(x => x.IsIdentity);
if (list == null) return null;
return list.ToList();
}
/// <summary>
/// 获取可空字段。
/// </summary>
/// <returns></returns>
public List<DbFieldInfo> GetIsNullableFields()
{
var list = Fileds.Where(x => x.IsNullable);
if (list == null) return null;
return list.ToList();
}
/// <summary>
/// 获取不可空字段。
/// </summary>
/// <returns></returns>
public List<DbFieldInfo> GetNotNullableFields()
{
var list = Fileds.Where(x => !x.IsNullable);
if (list == null) return null;
return list.ToList();
}
}
}