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
<PackageReference Include="CompuMaster.Data.Controls" Version="3.0.2025.1229" />
<PackageVersion Include="CompuMaster.Data.Controls" Version="3.0.2025.1229" />
<PackageReference Include="CompuMaster.Data.Controls" />
paket add CompuMaster.Data.Controls --version 3.0.2025.1229
#r "nuget: CompuMaster.Data.Controls, 3.0.2025.1229"
#:package CompuMaster.Data.Controls@3.0.2025.1229
#addin nuget:?package=CompuMaster.Data.Controls&version=3.0.2025.1229
#tool nuget:?package=CompuMaster.Data.Controls&version=3.0.2025.1229
CompuMaster.Data
.NET library with common methods for simplified data access, data table arrangements and data IO
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 | Versions 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. |
-
.NETFramework 4.8
- CompuMaster.Data (>= 3.0.2025.1229)
-
net6.0-windows7.0
- CompuMaster.Data (>= 3.0.2025.1229)
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 |