本文整理汇总了C#中ObjectClass.CollectChildClasses方法的典型用法代码示例。如果您正苦于以下问题:C# ObjectClass.CollectChildClasses方法的具体用法?C# ObjectClass.CollectChildClasses怎么用?C# ObjectClass.CollectChildClasses使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ObjectClass
的用法示例。
在下文中一共展示了ObjectClass.CollectChildClasses方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CheckExtraColumns
private void CheckExtraColumns(ObjectClass objClass)
{
if (objClass.GetTableMapping() == TableMapping.TPH && objClass.BaseObjectClass != null) return; // Check only base TPH classes
Log.Debug("Extra Columns: ");
List<string> columns = new List<string>();
List<ObjectClass> classes = new List<ObjectClass>(new[] { objClass });
if (objClass.GetTableMapping() == TableMapping.TPH)
objClass.CollectChildClasses(classes, true);
foreach (var cls in classes)
{
GetExistingColumnNames(cls, cls.Properties, String.Empty, columns);
GetRelationColumnNames(cls, columns);
}
foreach (string propName in db.GetTableColumnNames(objClass.GetTableRef(db)))
{
if (propName == "ID" || propName == TableMapper.DiscriminatorColumnName)
continue;
if (!columns.Contains(propName))
{
Log.WarnFormat("Column '[{0}].[{1}].[{2}]' found in database but no Property was defined",
objClass.Module.IfNotNull(o => o.SchemaName),
objClass.TableName,
propName);
}
}
}