Files
lserp_cs_5.0/插件库/Zhaizj.Framework/_Zhaizj/Entity.cs
T
2026-07-10 15:25:05 +08:00

64 lines
2.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using Zhaizj.Framework.Reflection;
using Zhaizj.Framework.ORM;
namespace Zhaizj.Framework {
/// <summary>
/// 实体类常用方法
/// </summary>
public class Entity {
/// <summary>
/// 根据类型全名,创建持久化对象
/// </summary>
/// <param name="typeFullName">类型的全名</param>
/// <returns>返回一个 IEntity 持久化对象</returns>
public static IEntity New( String typeFullName ) {
IConcreteFactory factory = (IConcreteFactory)MappingClass.Instance.FactoryList[typeFullName];
return factory == null ? null : factory.New();
}
/// <summary>
/// 获取类型 t 的元数据信息
/// </summary>
/// <param name="t"></param>
/// <returns></returns>
public static EntityInfo GetInfo( Type t ) {
return MappingClass.Instance.ClassList[t.FullName] as EntityInfo;
}
/// <summary>
/// 获取类型 typeFullName 的元数据信息
/// </summary>
/// <param name="typeFullName">类型全名,包括namespace,但不包括程序集</param>
/// <returns></returns>
public static EntityInfo GetInfo( String typeFullName ) {
return MappingClass.Instance.ClassList[typeFullName] as EntityInfo;
}
/// <summary>
/// 获取对象 obj 的元数据信息
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
public static EntityInfo GetInfo( Object obj ) {
return GetInfo( obj.GetType() );
}
/// <summary>
/// 根据全名获取类型
/// </summary>
/// <param name="typeFullName"></param>
/// <returns></returns>
public static Type GetType( String typeFullName ) {
return MappingClass.Instance.TypeList[typeFullName] as Type;
}
}
}