Acklann.Daterpillar
4.8.8
dotnet add package Acklann.Daterpillar --version 4.8.8
NuGet\Install-Package Acklann.Daterpillar -Version 4.8.8
<PackageReference Include="Acklann.Daterpillar" Version="4.8.8" />
paket add Acklann.Daterpillar --version 4.8.8
#r "nuget: Acklann.Daterpillar, 4.8.8"
// Install Acklann.Daterpillar as a Cake Addin
#addin nuget:?package=Acklann.Daterpillar&version=4.8.8
// Install Acklann.Daterpillar as a Cake Tool
#tool nuget:?package=Acklann.Daterpillar&version=4.8.8
Daterpillar is a miro-orm that currently supports SQL Server, MySQL and SQLite. The library helps you to do the following.
* Generate a database schema from classes marked with specific attributes.
* Construct SQL queries.
* Construct SQL commands.
*******************
* USAGE *
*******************
1- Generating schemas.
The package ships with a msbuild target that runs before the build target. When executed the target will generate a xml file (<asseblyName>.schema.xml) in the project output directory. You can specify which classes are included in the xml file decorating them will attributes.
example:
[Table]
public class User
{
[Column] public int Id { get; set; }
[Column] public string Name { get; set; }
}
2- Constructing SQL queries
The Query class contain methods to help create SQL queries. There is also a Query<T> class that uses relfection to build the queries where as the Query class uses plain old string concatenation.
example:
var query = new Query<User>(Syntax.MySQL)
.SelectAll()
.Where(x=> x.Name == "john");
or
var query = new Query(Syntax.MySQL)
.SelectAll()
.Where("name='john'");
output: SELECT * FROM User Where Name='john';
3- Constructing SQL commands
The library contain several extension methods to generate commands from objects.
example:
var user = new User() { Id = 12, Name = "john" };
var insertCmd = user.ToInsertCommand();
output: INSERT INTO User (Id, Name) VALUES ('12', 'john');
var users = new User[] { ... };
var insertCmd = users.ToInsertCommand();
output: output: INSERT INTO User (Id, Name) VALUES ('12', 'john'), ...
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. |
.NET Core | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard1.4 is compatible. netstandard1.5 was computed. netstandard1.6 was computed. netstandard2.0 was computed. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
Universal Windows Platform | uap was computed. uap10.0 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 1.4
- Microsoft.CSharp (>= 4.3.0)
- NETStandard.Library (>= 1.6.1)
- System.Xml.XmlSerializer (>= 4.3.0)
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 |
---|
version 4.8.4
-------------
* Fix Invoke-SqlCommand inability to handle GO statements.
version 4.8.0
-------------
* Add ToAssignments method to LinqToSqlConverter class.
verion 4.7.23
-------------
* Have the ConvertT0-Script auto sort the schema.
version 4.7.22
--------------
* Fix SQLiteInformationSchema.
version 4.7.19
--------------
* Fix schema.sort method
version 4.7.18
--------------
* Add RemoveTable method to schema class
version 4.7.14
--------------
* Add msbuild targets to automation package
version 4.7.12
--------------
* Add Compare-Database cmdlet
version 4.7.9
-------------
* Remove named parameter sets
version 4.6.13
--------------
Add features:
* Add DeleteIfExist switch to Add-Database cmdlet