/// <summary> /// 创建指定视图类型的字段列表。 /// </summary> /// <param name="entityMapper">实体的类型映射器。</param> /// <param name="viewMapper">视图的类型映射器。</param> /// <returns>包含在 <paramref name="entityMapper"/> 的 <paramref name="viewMapper"/> 属性集合,并对每个属性进行转义。</returns> public virtual string CreateFields(TypeMapper entityMapper, TypeMapper viewMapper) { if (entityMapper == null) { throw new ArgumentNullException(nameof(entityMapper)); } if (viewMapper == null) { throw new ArgumentNullException(nameof(viewMapper)); } string fields = "*"; if (entityMapper != viewMapper) { List <string> fieldList = new List <string>(); foreach (var viewProperty in viewMapper.Properties) { if (viewProperty.IsIgnore) { continue; } if (!entityMapper.Contains(viewProperty.Name)) { continue; } fieldList.Add(this.EscapeName(viewProperty.Name, NamePoint.Field)); } fields = fieldList.ToArray().Join(); } return(fields); }
/// <summary> /// 创建指定视图类型的字段列表。 /// </summary> /// <param name="entityMapper">实体的类型映射器。</param> /// <param name="viewMapper">视图的类型映射器。</param> /// <returns>包含在 <paramref name="entityMapper"/> 的 <paramref name="viewMapper"/> 属性集合,并对每个属性进行转义。</returns> public virtual string CreateFields(TypeMapper entityMapper, TypeMapper viewMapper) { if(entityMapper == null) throw new ArgumentNullException(nameof(entityMapper)); if(viewMapper == null) throw new ArgumentNullException(nameof(viewMapper)); string fields = "*"; if(entityMapper != viewMapper) { List<string> fieldList = new List<string>(); foreach(var viewProperty in viewMapper.Properties) { if(viewProperty.IsIgnore) continue; if(!entityMapper.Contains(viewProperty.Name)) continue; fieldList.Add(this.EscapeName(viewProperty.Name, NamePoint.Field)); } fields = fieldList.ToArray().Join(); } return fields; }