简化 Enum.json和CodeGen.json中的名称配置
This commit is contained in:
parent
93ffa5ad50
commit
d47b38c155
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
// 代码生成配置项-程序集名称集合
|
// 代码生成配置项-程序集名称集合
|
||||||
"CodeGen": {
|
"CodeGen": {
|
||||||
"EntityAssemblyNames": [ "Admin.NET.Core", "Admin.NET.Application" ],
|
"EntityAssemblyNames": [ "Admin." ],
|
||||||
"BaseEntityNames": [ "EntityTenantId", "EntityTenant", "EntityTenantBaseData", "EntityBaseData", "EntityBase", "EntityBaseId" ],
|
"BaseEntityNames": [ "EntityTenantId", "EntityTenant", "EntityTenantBaseData", "EntityBaseData", "EntityBase", "EntityBaseId" ],
|
||||||
"EntityBaseColumn": {
|
"EntityBaseColumn": {
|
||||||
"EntityTenantId": [ "Id", "TenantId" ],
|
"EntityTenantId": [ "Id", "TenantId" ],
|
||||||
|
|||||||
@ -3,6 +3,6 @@
|
|||||||
|
|
||||||
// 枚举实体所在程序集名称集合
|
// 枚举实体所在程序集名称集合
|
||||||
"Enum": {
|
"Enum": {
|
||||||
"EntityAssemblyNames": [ "Admin.NET.Core", "Admin.NET.Application", "Admin.NET.AppCMS" ]
|
"EntityAssemblyNames": [ "Admin." ]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -248,10 +248,15 @@ public class SysCodeGenService : IDynamicApiController, ITransient
|
|||||||
var types = new List<Type>();
|
var types = new List<Type>();
|
||||||
if (_codeGenOptions.EntityAssemblyNames != null)
|
if (_codeGenOptions.EntityAssemblyNames != null)
|
||||||
{
|
{
|
||||||
foreach (var assemblyName in _codeGenOptions.EntityAssemblyNames)
|
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
||||||
|
foreach (var assembly in assemblies)
|
||||||
{
|
{
|
||||||
Assembly asm = Assembly.Load(assemblyName);
|
var assemblyName = assembly.GetName().Name;
|
||||||
types.AddRange(asm.GetExportedTypes().ToList());
|
if (_codeGenOptions.EntityAssemblyNames.Contains(assemblyName) || _codeGenOptions.EntityAssemblyNames.Any(name => assemblyName.Contains(name)))
|
||||||
|
{
|
||||||
|
Assembly asm = Assembly.Load(assemblyName);
|
||||||
|
types.AddRange(asm.GetExportedTypes().ToList());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
bool IsMyAttribute(Attribute[] o)
|
bool IsMyAttribute(Attribute[] o)
|
||||||
|
|||||||
@ -27,7 +27,10 @@ public class SysEnumService : IDynamicApiController, ITransient
|
|||||||
[DisplayName("获取所有枚举类型")]
|
[DisplayName("获取所有枚举类型")]
|
||||||
public List<EnumTypeOutput> GetEnumTypeList()
|
public List<EnumTypeOutput> GetEnumTypeList()
|
||||||
{
|
{
|
||||||
var enumTypeList = App.EffectiveTypes.Where(u => u.IsEnum && _enumOptions.EntityAssemblyNames.Contains(u.Assembly.GetName().Name)).OrderBy(u => u.Name).OrderBy(u => u.FullName).ToList();
|
var enumTypeList = App.EffectiveTypes.Where(t => t.IsEnum)
|
||||||
|
.Where(t => _enumOptions.EntityAssemblyNames.Contains(t.Assembly.GetName().Name) || _enumOptions.EntityAssemblyNames.Any(name => t.Assembly.GetName().Name.Contains(name)))
|
||||||
|
.OrderBy(u => u.Name).OrderBy(u => u.FullName)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
var result = new List<EnumTypeOutput>();
|
var result = new List<EnumTypeOutput>();
|
||||||
foreach (var item in enumTypeList)
|
foreach (var item in enumTypeList)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user