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 100 12/29/2025
3.0.2025.903 246 9/2/2025
3.0.2025.902 191 9/2/2025
3.0.2025.430 249 4/30/2025
3.0.2024.815 306 8/15/2024
3.0.2024.801 156 8/1/2024
3.0.2024.730 168 7/30/2024
3.0.2024.523 223 5/23/2024
3.0.2024.328 270 3/28/2024
3.0.2024.117 298 1/17/2024
3.0.2023.1124 326 11/23/2023
3.0.2023.1123 203 11/23/2023
3.0.2023.1122 223 11/22/2023
3.0.2023.728 300 7/28/2023
3.0.2023.724 291 7/24/2023
3.0.2023.720-beta1 223 7/20/2023
3.0.2023.626 246 6/26/2023
3.0.2023.613 317 6/13/2023
3.0.2023.303 444 3/1/2023
3.0.2023.302 390 3/1/2023
3.0.2023.103 499 1/3/2023
3.0.2022.1223 451 12/23/2022
3.0.2022.1115 481 11/15/2022
3.0.2022.906 602 9/5/2022
3.0.2022.905 584 9/5/2022
3.0.2022.811 627 8/11/2022
3.0.2022.726 601 7/25/2022
3.0.2022.610 642 6/10/2022
3.0.2022.311 679 3/11/2022
3.0.2022.225 673 2/25/2022
2.8.2021.602 685 6/2/2021
2.8.2021.530 666 5/30/2021
2.8.2021.331 569 3/30/2021
2.8.2021.330 572 3/30/2021
2.8.2021.325 607 3/25/2021
2.8.2021.324 603 3/24/2021
2.8.2021.319 542 3/19/2021
2.8.2021.307 549 3/18/2021
2.8.2021.306 633 3/6/2021
2.8.2021.305 612 3/5/2021
2.8.2021.132 643 1/28/2021
2.8.2021.131 617 1/28/2021
2.8.2021.130 585 1/28/2021
2.8.2021.129 584 1/28/2021
2.8.2021.128 559 1/27/2021
2.8.2021.127 554 1/27/2021
2.8.2021.118 627 1/18/2021
2.8.2020.625 776 6/24/2020
2.8.2020.624 733 6/24/2020
2.8.2020.311 760 3/11/2020
2.8.2020.129 735 1/29/2020
2.8.2020.114 823 1/14/2020
2.8.2019.1218 784 12/18/2019
2.8.2019.514 898 5/14/2019
2.8.2019.320 893 3/20/2019
2.8.2019.314 799 3/14/2019
2.8.2019.313 850 3/14/2019
2.8.2019.312-beta1 644 3/12/2019
2.8.2018.1019-beta1 826 10/19/2018
2.8.2018.1018-beta1 873 10/18/2018
2.8.2018.913 1,100 9/12/2018
2.8.2017.1221 1,654 12/19/2017
2.8.2017.1220 1,590 12/19/2017
2.8.2017.1219 1,299 12/18/2017
2.8.2017.1005 1,347 10/5/2017
2.8.2017.1004 1,285 10/4/2017
2.8.2017.616 1,412 6/16/2017
2.8.2017.613 1,355 6/13/2017
2.8.2017.608 1,320 6/6/2017
2.8.2017.607 1,357 6/6/2017
2.8.2017.606 1,350 6/6/2017
2.8.2017.503 1,325 5/2/2017
2.8.2017.502 1,358 5/2/2017
2.8.2016.824 1,437 8/24/2016
2.8.2016.818 1,406 8/16/2016
2.8.2016.817 1,437 8/16/2016
2.8.2016.816 1,433 8/16/2016
2.8.2016.805 1,545 8/4/2016
2.8.2016.804-beta3 1,352 8/4/2016
2.8.2016.804-beta2 1,194 8/4/2016
2.8.2016.723 1,409 7/22/2016
2.8.2016.722 1,414 7/21/2016
2.8.2016.721 1,436 7/21/2016
2.8.2016.708 1,421 7/8/2016
2.8.2016.120 1,754 1/20/2016
2.8.2015.1125 1,429 1/20/2016
2.8.2015.1123 1,525 11/12/2015
2.8.2015.1122 1,481 11/12/2015