CodedThought.Core.Data.ExcelSystem 8.0.0

dotnet add package CodedThought.Core.Data.ExcelSystem --version 8.0.0                
NuGet\Install-Package CodedThought.Core.Data.ExcelSystem -Version 8.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CodedThought.Core.Data.ExcelSystem" Version="8.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CodedThought.Core.Data.ExcelSystem --version 8.0.0                
#r "nuget: CodedThought.Core.Data.ExcelSystem, 8.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install CodedThought.Core.Data.ExcelSystem as a Cake Addin
#addin nuget:?package=CodedThought.Core.Data.ExcelSystem&version=8.0.0

// Install CodedThought.Core.Data.ExcelSystem as a Cake Tool
#tool nuget:?package=CodedThought.Core.Data.ExcelSystem&version=8.0.0                

CodedThought.Core.Data.ExcelSystem

A .NET Core Excel Read/Write Library

Installation

  1. Reference the CodedThought.Core and CodedThought.Core.Configuration packages.
  2. Reference the CodedThought.Core.Data.ExcelSystem package.

Usage

Set Up Data Aware Classes

Note: Please see the CodedThought.Core package README for more on using data aware classes.

// This example is a data aware class for a country object.
namespace Sample.Data {

    [ApiDataController("lookup")]
    [DataTable("COUNTRY", "", "dbo")]
    public class Country {

        #region Constructors

        public Country() {
        }

        #endregion Constructors

        #region Properties

        /// <summary>
        /// Gets or sets the name of the country.
        /// </summary>
        /// <value>
        /// The name of the country.
        /// </value>
        [DataColumn("CountryName", DbType.String, DataColumnOptions.PrimaryKey)]
        public string CountryName { get; set; }

        /// <summary>
        /// Gets or sets the region code.
        /// </summary>
        /// <value>
        /// The region code.
        /// </value>
        [DataColumn("RegionCode", DbType.String)]
        public string RegionCode { get; set; }

        /// <summary>
        /// Gets or sets the iso code.
        /// </summary>
        /// <value>
        /// The iso code.
        /// </value>
        [DataColumn("CountryCodeISO", DbType.String)]
        public string ISOCode { get; set; }

        /// <summary>
        /// Gets or sets the iso code3.
        /// </summary>
        /// <value>
        /// The iso code3.
        /// </value>
        [DataColumn("CountryCodeISO3", DbType.String)]
        public string ISOCode3 { get; set; }

        #endregion Properties
    }
}
Sample Code
This is a quick sample for creating an excel file based on the country data aware class above and returning it to an API content result
PropertyInfo[] ColumnNames = typeof(Country).GetProperties();
string fileName = $"ExcelOutput_{DateTime.Today:yyyyMMddHHmmss}.xlsx";
Stream output = ExcelOpenXmlWriter.CreateExcelDocumentAsStream(model.Countries, fileName);
FileContentResult fcr = new(_common.ConvertToByteArray(output), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") {
    FileDownloadName = fileName
};
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.0.0 99 11/5/2024
6.0.1 140 4/1/2024
6.0.0.12 246 11/8/2023