如何从 ServiceStack ORMLite 中检索数据注释别名("tablename")和别名("field name")?

How to retrieve Data Annotation Alias("tablename") and Alias("field name") from ServiceStack ORMLite?

我需要 return 来自此 class "tblAccounts" 和 "AccountNumber" 的数据注释的别名。它使用 ServiceStack ORM Lite。

[Alias("tblAccounts")]
    [Schema("task")]
    public class Account : IHasId<int>
    {
        [Alias("AccountNumber")]
        public int Id { get; set; }
        [Required]
        public int UnitId { get; set; }
        [Required]
        public int OldAccountNumber { get; set; }
        [Required]
    }

您可以从为每个 POCO Table 创建的 OrmLite ModelDefinition 中查询,例如:

var modelDef = typeof(Account).GetModelMetadata();

var tableName = modelDef.ModelName;
var idName = modelDef.PrimaryKey.FieldName;

这两种情况都会 return [Alias] 如果它存在。