CompuMaster.Data.Controls 3.0.2025.1229

dotnet add package CompuMaster.Data.Controls --version 3.0.2025.1229
                    
NuGet\Install-Package CompuMaster.Data.Controls -Version 3.0.2025.1229
                    
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="CompuMaster.Data.Controls" Version="3.0.2025.1229" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CompuMaster.Data.Controls" Version="3.0.2025.1229" />
                    
Directory.Packages.props
<PackageReference Include="CompuMaster.Data.Controls" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CompuMaster.Data.Controls --version 3.0.2025.1229
                    
#r "nuget: CompuMaster.Data.Controls, 3.0.2025.1229"
                    
#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.
#:package CompuMaster.Data.Controls@3.0.2025.1229
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CompuMaster.Data.Controls&version=3.0.2025.1229
                    
Install as a Cake Addin
#tool nuget:?package=CompuMaster.Data.Controls&version=3.0.2025.1229
                    
Install as a Cake Tool

CompuMaster.Data

.NET library with common methods for simplified data access, data table arrangements and data IO

Github Release NuGet CompuMaster.Data NuGet CompuMaster.Data.Controls

Simple download/installation using NuGet

Install-Package CompuMaster.Data

respectively

Install-Package CompuMaster.Data.Controls

Also see: https://www.nuget.org/packages/CompuMaster.Data/

Some of the many features - all .Net data providers

  • easy and stable access to data from external data sources (native, OLE-DB, ODBC)
  • execute/query data from database with the most less amount of code lines: simply fill a complete DataTable with 1 (!!) line of code
        'VB.NET sample:
        Dim MyTable As System.Data.DataTable = CompuMaster.Data.DataQuery.AnyIDataProvider.FillDataTable(
            New System.Data.OleDb.OleDbConnection(ConnectionString),
            "SELECT * FROM table", System.Data.CommandType.Text,
            Nothing,
            CompuMaster.Data.DataQuery.AnyIDataProvider.Automations.AutoOpenAndCloseAndDisposeConnection,
            "MyTableName")
        // C# sample: 
        System.Data.DataTable myTable = CompuMaster.Data.DataQuery.AnyIDataProvider.FillDataTable(
            New System.Data.OleDb.OleDbConnection(ConnectionString),
            "SELECT * FROM table", System.Data.CommandType.Text,
            null,
            CompuMaster.Data.DataQuery.AnyIDataProvider.Automations.AutoOpenAndCloseAndDisposeConnection,
            "MyTableName");
  • execute a query with several command parameters within 5 (!!) lines of code
        Dim MyCmd As New System.Data.SqlClient.SqlCommand("SELECT * FROM table WHERE FN=@FirstName AND LN=@FamilyName", New System.Data.SqlClient.SqlConnection(ConnectionString))
        MyCmd.Parameters.Add("@FirstName", SqlDbType.NVarChar).Value = "John"
        MyCmd.Parameters.Add("@FamilyName", SqlDbType.NVarChar).Value = "O'Regan"
        MyCmd.CommandType = System.Data.CommandType.Text
        MyTable = CompuMaster.Data.DataQuery.AnyIDataProvider.FillDataTable(
            MyCmd,
            CompuMaster.Data.DataQuery.AnyIDataProvider.Automations.AutoOpenAndCloseAndDisposeConnection,
            "MyTableName")
  • code reduction = maintenance costs reduction
    • execute/query data from database with the most less amount of code lines seen ever
  • code reduction = more stable code
    • forget the Try-Catch-Finally blocks
    • never forget to close a connection and run into pooling problems
  • simplified common methods to query/update data from/on database for all .Net data providers
    • don't care any more about MS SQL Server, MySql, Oracle, PostgreSql or many other RDMS
    • don't care any more about accessing the RDMS using native .Net data providers, OLE-DB or ODBC connections
  • simplified common methods to write back your locally changed data to your external data source

Some of the many features - CSV

  • native access to CSV files
    • read/write CSV files with one line of code
        SourceTable = CompuMaster.Data.Csv.ReadDataTableFromCsvFile("c:\temp\input.txt", True)
        CompuMaster.Data.Csv.WriteDataTableToCsvFile("C:\temp\data.csv", SourceTable)
  • support column headers enabled or disabled
  • culture dependent or culture independent (especially column separtors, decimal separators)
  • always use correct file encoding (ANSI, UTF-8, UTF-16, WINDOWS-1252, ISO-8859-1 and many others)
  • always create valid CSV data
  • support for multi-line data in your CSV files - even Microsoft Excel will understand it on import
  • CSV files can use column separators of fixed column widths
  • read/write from/to files, strings or
  • read directly a CSV file from an URL
  • ideal for your simple REST web service client/server

DataTables - your in-memory relational database system

  • extract columns and rows using filters, where-clauses and many other technics you already know from your favorite SQL system
  • join several DataTables in memory as you do with your favorite SQL system
    • Inner Join
    • Left Join
    • Right Join
    • Full Outer Join
    • Cross Join
    • use 1 or more columns for joining
        Dim NewTable As DataTable = _
              CompuMaster.Data.DataTables.SqlJoinTables( 
              LeftTable, New String() {"ID"}, 
              RightTable, New String() {"PrimaryKeyID"}, 
              CompuMaster.Data.DataTables.SqlJoinTypes.FullOuter)
  • rearrange columns, sort rows and put them into new DataTables
  • convert full DataTables, DataSets or just some DataRows into beautiful plain text or HTML tables with just 1 line of code
        CompuMaster.Data.DataTables.ConvertToPlainTextTable(SourceTable)
        CompuMaster.Data.DataTables.ConvertToPlainTextTableFixedColumnWidths(SourceTable)
        CompuMaster.Data.DataTables.ConvertToHtmlTable(SourceTable)

Some more features - XLS(X)

read directly from .XLS/.XLSX files using XlsReader (may require separate database drivers from Microsoft (Office) installed on your system)

SourceTable = CompuMaster.Data.XlsReader.ReadDataTableFromXlsFile( 
    "c:\temp\input.xlsx", 
    "sheet1")

There is still more...

Still not convinced? Download your library now and for free and see the many stuff in the library you need all the days regardless if you're a C#, VB.NET or ... developer

  • String/Object/Value/Double checks for DbNull.Value, null/Nothing, String.Empty, Double.NaN
  • Remove password part from ConnectionString in case you need to show it to your administrative user
  • Query from LDAP directories directly into DataTables
  • Create empty Microsoft Excel or Microsoft Access database files for immediate read/write access

Honors

This library has been developed and maintained by CompuMaster GmbH for years.

References

CompuMaster.Data.Controls

You may find this library useful for using DataGrids in Windows Forms application with row update support on the foreign data source

Install-Package CompuMaster.Data.Controls

Also see: https://www.nuget.org/packages/CompuMaster.Data.Controls/

Product Compatible and additional computed target framework versions.
.NET net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net8.0-windows was computed.  net9.0-windows was computed.  net10.0-windows was computed. 
.NET Framework net48 is compatible.  net481 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
3.0.2025.1229 105 12/29/2025
3.0.2025.903 249 9/2/2025
3.0.2025.902 193 9/2/2025
3.0.2025.430 249 4/30/2025
3.0.2024.815 311 8/15/2024
3.0.2024.801 161 8/1/2024
3.0.2024.730 169 7/30/2024
3.0.2024.523 226 5/23/2024
3.0.2024.328 271 3/28/2024
3.0.2024.117 301 1/17/2024
3.0.2023.1124 328 11/23/2023
3.0.2023.1123 205 11/23/2023
3.0.2023.1122 224 11/22/2023
3.0.2023.728 302 7/28/2023
3.0.2023.724 296 7/24/2023
3.0.2023.720-beta1 226 7/20/2023
3.0.2023.626 250 6/26/2023
3.0.2023.613 319 6/13/2023
3.0.2023.303 447 3/1/2023
3.0.2023.302 391 3/1/2023
3.0.2023.103 500 1/3/2023
3.0.2022.1223 454 12/23/2022
3.0.2022.1115 481 11/15/2022
3.0.2022.906 603 9/5/2022
3.0.2022.905 586 9/5/2022
3.0.2022.811 628 8/11/2022
3.0.2022.726 604 7/25/2022
3.0.2022.610 642 6/10/2022
3.0.2022.311 683 3/11/2022
3.0.2022.225 673 2/25/2022
2.8.2021.602 685 6/2/2021
2.8.2021.530 669 5/30/2021
2.8.2021.331 573 3/30/2021
2.8.2021.330 573 3/30/2021
2.8.2021.325 610 3/25/2021
2.8.2021.324 605 3/24/2021
2.8.2021.319 548 3/19/2021
2.8.2021.307 550 3/18/2021
2.8.2021.306 637 3/6/2021
2.8.2021.305 613 3/5/2021
2.8.2021.132 645 1/28/2021
2.8.2021.131 623 1/28/2021
2.8.2021.130 588 1/28/2021
2.8.2021.129 590 1/28/2021
2.8.2021.128 563 1/27/2021
2.8.2021.127 561 1/27/2021
2.8.2021.118 630 1/18/2021
2.8.2020.625 780 6/24/2020
2.8.2020.624 738 6/24/2020
2.8.2020.311 763 3/11/2020
2.8.2020.129 738 1/29/2020
2.8.2020.114 829 1/14/2020
2.8.2019.1218 786 12/18/2019
2.8.2019.514 901 5/14/2019
2.8.2019.320 898 3/20/2019
2.8.2019.314 804 3/14/2019
2.8.2019.313 852 3/14/2019
2.8.2019.312-beta1 648 3/12/2019
2.8.2018.1019-beta1 827 10/19/2018
2.8.2018.1018-beta1 876 10/18/2018
2.8.2018.913 1,102 9/12/2018
2.8.2017.1221 1,655 12/19/2017
2.8.2017.1220 1,593 12/19/2017
2.8.2017.1219 1,299 12/18/2017
2.8.2017.1005 1,349 10/5/2017
2.8.2017.1004 1,287 10/4/2017
2.8.2017.616 1,417 6/16/2017
2.8.2017.613 1,357 6/13/2017
2.8.2017.608 1,321 6/6/2017
2.8.2017.607 1,358 6/6/2017
2.8.2017.606 1,354 6/6/2017
2.8.2017.503 1,326 5/2/2017
2.8.2017.502 1,360 5/2/2017
2.8.2016.824 1,438 8/24/2016
2.8.2016.818 1,409 8/16/2016
2.8.2016.817 1,437 8/16/2016
2.8.2016.816 1,435 8/16/2016
2.8.2016.805 1,546 8/4/2016
2.8.2016.804-beta3 1,354 8/4/2016
2.8.2016.804-beta2 1,197 8/4/2016
2.8.2016.723 1,413 7/22/2016
2.8.2016.722 1,415 7/21/2016
2.8.2016.721 1,443 7/21/2016
2.8.2016.708 1,422 7/8/2016
2.8.2016.120 1,761 1/20/2016
2.8.2015.1125 1,432 1/20/2016
2.8.2015.1123 1,532 11/12/2015
2.8.2015.1122 1,484 11/12/2015