Ir para o conteúdo

Exemplo de Script - Humanizador

Este exemplo demonstra como definir valores de células usando uma ação registrada no Filter evento. Ele aproveita o Humanizador biblioteca incluída no Vinyl. Neste exemplo, o script gera uma descrição amigável do tamanho do arquivo.

Esquema de Tabela

Coluna Tipo de dados Chave Primária Gerar automaticamente Anulável
FileId GUID Sim Sim Não
FileName NVARCHAR(255) Não Não Não
FileSize INTEGER Não Não Sim
FileSizeDescription NVARCHAR(50) Não Não Sim

Observe que o FileSizeDescription coluna não precisa ser definida na tabela: ela pode ser definida no objeto de negócio.

Script

#r "Humanizer.dll"

using Humanizer.Bytes;

foreach (EventRow row in Table.Rows)
{
    int fileSize = row["FileSize"].GetValueAsInteger();
    var byteSize = new ByteSize(fileSize);
    row["FileSizeDescription"].Value = byteSize.ToString("#.#");
}