示例#1
0
 /// <summary>
 /// Adiciona informações sobre um campo.
 /// </summary>
 /// <param name="entity">A entidade modificada.</param>
 /// <param name="header">Informações cobre o campo.</param>
 /// <returns>A própria entidade modificada.</returns>
 public static Entity AddRowHeader(this Entity entity, HeaderInfo header)
 {
     HeaderUtil.AddHeaderToEntity(
         entity
         , HeaderNamesProperty
         , header.Name
         , header.Title
         , header.DataType
         , RelNames.Row
         , options => header.CopyToHeaderOptions(options)
         );
     return(entity);
 }
示例#2
0
 /// <summary>
 /// Adiciona informações sobre um campo oculto.
 /// </summary>
 /// <param name="entity">A entidade modificada.</param>
 /// <param name="name">Os dados adicionados à entidade.</param>
 /// <param name="title">Título do campo.</param>
 /// <param name="dataType">Tipo do dado do campo.</param>
 /// <returns>A própria entidade modificada.</returns>
 public static Entity AddRowHeaderHidden(this Entity entity, string name, string title = null, string dataType = null)
 {
     HeaderUtil.AddHeaderToEntity(
         entity
         , HeaderNamesProperty
         , name
         , title
         , dataType
         , RelNames.Row
         , opt => opt.AddHidden()
         );
     return(entity);
 }
示例#3
0
 /// <summary>
 /// Adiciona informações sobre um campo.
 /// </summary>
 /// <param name="entity">A entidade modificada.</param>
 /// <param name="name">Os dados adicionados à entidade.</param>
 /// <param name="builder">Construtor do cabeçalho.</param>
 /// <returns>A própria entidade modificada.</returns>
 public static Entity AddRowHeader(this Entity entity, string name, Action <HeaderBuilder> builder = null)
 {
     HeaderUtil.AddHeaderToEntity(
         entity
         , HeaderNamesProperty
         , name
         , null
         , null
         , RelNames.Row
         , builder
         );
     return(entity);
 }
示例#4
0
 /// <summary>
 /// Adiciona informações sobre um campo.
 /// </summary>
 /// <param name="entity">A entidade modificada.</param>
 /// <param name="name">Os dados adicionados à entidade.</param>
 /// <param name="title">Título do campo.</param>
 /// <param name="dataType">Tipo do dado do campo.</param>
 /// <param name="hidden">Marcao ou desmarca o campo como oculto.</param>
 /// <returns>A própria entidade modificada.</returns>
 public static Entity AddDataHeader(this Entity entity, string name, string title = null, string dataType = null, bool hidden = false)
 {
     HeaderUtil.AddHeaderToEntity(
         entity
         , HeaderNamesProperty
         , name
         , title
         , dataType
         , RelNames.Data
         , opt => opt.AddHidden(hidden)
         );
     return(entity);
 }
示例#5
0
        /// <summary>
        /// Adiciona informações sobre um campo.
        /// </summary>
        /// <param name="entity">A entidade modificada.</param>
        /// <param name="typeOrInstance">Um tipo ou instância para inferência dos campos.</param>
        /// <returns>A própria entidade modificada.</returns>
        public static Entity AddRowHeadersFrom(this Entity entity, object typeOrInstance, Action <HeaderBuilder> builder = null)
        {
            var properties = Property.UnwrapPropertyInfo(typeOrInstance);

            foreach (var property in properties)
            {
                HeaderUtil.AddHeaderToEntity(
                    entity
                    , HeaderNamesProperty
                    , property.Name
                    , property.Title
                    , DataTypeNames.GetDataTypeName(property.Type)
                    , RelNames.Row
                    , builder
                    );
            }
            return(entity);
        }
示例#6
0
 /// <summary>
 /// Adiciona informações sobre campos.
 /// </summary>
 /// <param name="entity">A entidade modificada.</param>
 /// <param name="headers">Os dados adicionados à entidade.</param>
 /// <returns>A própria entidade modificada.</returns>
 public static Entity AddRowHeaders(this Entity entity, IEnumerable <HeaderInfo> headers)
 {
     if (headers != null)
     {
         foreach (var header in headers)
         {
             HeaderUtil.AddHeaderToEntity(
                 entity
                 , HeaderNamesProperty
                 , header.Name
                 , header.Title
                 , header.DataType
                 , RelNames.Row
                 , options => header.CopyToHeaderOptions(options)
                 );
         }
     }
     return(entity);
 }
示例#7
0
        /// <summary>
        /// Adiciona informações sobre um campo.
        /// </summary>
        /// <param name="entity">A entidade modificada.</param>
        /// <param name="typeOrInstance">Um tipo ou instância para inferência dos campos.</param>
        /// <returns>A própria entidade modificada.</returns>
        public static Entity AddDataHeadersFrom(this Entity entity, object typeOrInstance, Action <HeaderBuilder> builder = null, string[] select = null, string[] except = null)
        {
            var properties =
                from property in Property.UnwrapPropertyInfo(typeOrInstance)
                where @select == null || property.Name.EqualsAnyIgnoreCase(@select)
                where except == null || !property.Name.EqualsAnyIgnoreCase(except)
                select property;

            foreach (var property in properties)
            {
                HeaderUtil.AddHeaderToEntity(
                    entity
                    , HeaderNamesProperty
                    , property.Name
                    , property.Title
                    , DataTypeNames.GetDataTypeName(property.Type)
                    , RelNames.Data
                    , builder
                    );
            }
            return(entity);
        }