Crud.Entity
3.0.0.6
dotnet add package Crud.Entity --version 3.0.0.6
NuGet\Install-Package Crud.Entity -Version 3.0.0.6
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="Crud.Entity" Version="3.0.0.6" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Crud.Entity" Version="3.0.0.6" />
<PackageReference Include="Crud.Entity" />
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 Crud.Entity --version 3.0.0.6
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Crud.Entity, 3.0.0.6"
#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 Crud.Entity@3.0.0.6
#: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=Crud.Entity&version=3.0.0.6
#tool nuget:?package=Crud.Entity&version=3.0.0.6
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
CrudEntityCSharp
Nuget Crud.Entity
Db config
public class XDataDb : CrudDB
{
public XDataDb()
:base(
connectionstring:"...",
dbCommand:typeof(DbCommand), //NpgsqlCommand,MySqlDbCommand ... IDbCommand
dbConnection:typeof(DBConnection), //NpgsqlConnection,MySqlConnection ... IDbConnection
DbType:Util.DatabaseName.Postgresql // Postgresql,Mssql,Mysql,Oracle (Not test only Postgresql)
){}
public TModel TModel => new TModel();
public TModel1 TModel1 => new TModel1();
public TModel2 TModel2 => new TModel2();
public TModel3 TModel3=> new TModel3();
public TModel4 TModel4 => new TModel4();
...
}
Model
public class TModel :CrudModel
{ .... }
Facade
public class TModel : ICrudFacade
{ .... }
AddParam
Where query parameter
Condittion AND, OR, AND NOT
Param Equal, Great, Small, GreatEqual, SmallEqual, NotEqual
Use
XDataDb db= new XDataDb();
db.TModel
.Join<TModel, TModel2>(true) in both cases true or false TModel inner join ?TModel2:TModel on TModel2.TModelID=TModel.id
.Join<TModel1, TModel2>()
.Join<TModel2, TModel3>()
...
.AddParam("TModel2.TModelID", TModel.Id,true) //add param last parameter of (true) for start
.AddParam("TModel2.TModel1ID", TModel1.Id)
.AddSelect("field")
.AddSelect("TModel1.field1","newName") //field1 as newName
.AddSelect("TModel1.field2","newName2") //field1 as newName
..
.ListFacade<TModelFacade>(typeof(TModel).Name);
// .ListObsFacade<TModelFacade>(typeof(TModel).Name); //observableCollection
db.TModel
.Add(TModel);
// AddFacade(TModelFacade);
#db.TModel
.InsertParam("name", TModel.name)
.InsertParam("sur", TModel.sur)
.Add()
db.TModel
.Edit(TModel);
// EditFacade(TModelFacade);
db.TModel
.AddParam("id", TModel.Id,true)
.UpdateParam("name", TModel.name)
.UpdateParam("sur", TModel.sur)
.Update()
db.TModel
.AddParam("name", TModel.name,true)
.AddParam("sur", TModel.sur)
.Remove();
db.TModel
.ListWithSql<T>(query,param1,param2...) ;
Transaction
db.TModel
.Add(TModel,true)
.Add(TModel2,true)
.EndTrans();
//.EndTransAsync
db.TModel
.Add(TModels,true) // TModels-> List<TModel>
.Add(TModel2,true)
.EndTrans();
//.EndTransAsync
db.TModel
.AddSql(TModel,query, true, param1,param2...)
param1,param2...
insert delete ..
select * from tmodel where id=@id and name=@name
V3.0.0.5
Fix Limit
Fix AddSelect
db.TModel
.AddSelect(true, params params string[] columnames)
.AddSelect(columname, asColumn)
...
db.TModel
.Add(true, TModel,TModel1...) //only Transaction
.EndTrans()
V3.0.0.6
Fix Join Randomize
Fix List
Fix Param Randomize
Note
Don't Accept Null value for Add,Update..
maybe I may be wrong in my description.
Test purpose and development
| 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. 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 | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- Npgsql (>= 4.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
I solved many problems