FileTables 1.0.5

There is a newer version of this package available.
See the version list below for details.
dotnet add package FileTables --version 1.0.5                
NuGet\Install-Package FileTables -Version 1.0.5                
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="FileTables" Version="1.0.5" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FileTables --version 1.0.5                
#r "nuget: FileTables, 1.0.5"                
#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 FileTables as a Cake Addin
#addin nuget:?package=FileTables&version=1.0.5

// Install FileTables as a Cake Tool
#tool nuget:?package=FileTables&version=1.0.5                

FileTable

Library of routines implementing a tables stored in text files.

Latest is 1.0.5 adds SettingsFile a file based name value pair object designed to hold settins for an app.

Version 1.0.4 Adds try blocks around load and save, empty value handeling.

Version 1.0.2 updates row to long.

  • By table I mean three properties.

    • FileName - to save the location of the file.

    • Columns - concurrent dictionary of columns

    • Rows - Concurrent dictionary of rows where

      • Each Row is a Dictionary of Fields that match the Columns.
  • By stored in text files with MessagePack means

    • Creates a wirepack object that has 2 properties a list of column and list of row.
      • On Save the code copies the Dictionary to List in wirepack
        • uses MessagPack to translate the wirepack into Byte[] in which I convert to string via Base64 encoding the buffer.
        • uses a stream to write the encoding to file.
      • On Load it's reverse, Load the encoded string from file.
        • Decode Base 64 to byte[] then use MessagePack to deserialize back to wirepack object.
          • from wirepack object copy the list of columns and rows to active Model.

Each FileTable can be created from scratch.

  • Setting Active = true; loads from file if one exists.
  • if your table didn't exist then the developer needs to add the columns before adding rows.
  • below is an example of how one could wrap the FileTable.
  • see sample output from AppSmith App
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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
1.0.6 84 11/3/2024
1.0.5 104 7/17/2024
1.0.4 111 7/8/2024
1.0.3 103 7/8/2024
1.0.2 110 7/7/2024
1.0.1 106 5/11/2024