MicroQueryOrm 3.0.0
dotnet add package MicroQueryOrm --version 3.0.0
NuGet\Install-Package MicroQueryOrm -Version 3.0.0
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="MicroQueryOrm" Version="3.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MicroQueryOrm --version 3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: MicroQueryOrm, 3.0.0"
#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.
// Install MicroQueryOrm as a Cake Addin #addin nuget:?package=MicroQueryOrm&version=3.0.0 // Install MicroQueryOrm as a Cake Tool #tool nuget:?package=MicroQueryOrm&version=3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
MicroQueryOrm
Simplified Ado NET queries for Sql databases.
- For now it is compatible only with Sql Server Databases.
Usage
Include the following namespaces:
using MicroQueryOrm.Common;
using MicroQueryOrm.SqlServer;
Additional namespaces for helper methods:
using MicroQueryOrm.Common.Extensions;
using MicroQueryOrm.SqlServer.Extensions;
Basic query example:
DataBaseConfiguration dbConfig = new()
{
ConnectionString = "<your_connection_string>",
CommandTimeout = 30,
ConnectionStringName = "Default"
};
var microQuery = new MicroQuery(dbConfig);
List<Product> result = await microQuery.QueryAsync<Product>(
"""
SELECT TOP (10)
[Id]
,[ImageUrl]
,[Category]
,[Title]
,[Rating]
,[ReviewsCount]
,[Price]
,[ShopName]
,[CreatedAt]
,[RemoteId]
FROM [dbo].[Products]
"""
)
.ToListAsync();
Test Model:
public class Product
{
// With or without [Column("Id")] attribute
public Guid Id { get; set; }
[Column("ImageUrl")]
public string ImageUrl { get; set; }
[Column("Category")]
public string Category { get; set; }
// With or without [Column("Title")] attribute
public string Title { get; set; }
[Column("Rating")]
public string Rating { get; set; }
[Column("ReviewsCount")]
public string ReviewsCount { get; set; }
[Column("Price")]
public string Price { get; set; }
[Column("ShopName")]
public string ShopName { get; set; }
[Ignore]
public DateTime CreatedAt { get; set; }
[Column("RemoteId")]
public long RemoteId { get; set; }
}
"Execute" methods example:
For executing queries or StoredProcedures that do not return data, use the "Execute" methods.
var inventoryParams = new Inventory
{
WarehouseId = "1",
CategoryId = "11",
CategoryDesc = "Category Desc 1",
Sku = "12345",
ProductDesc = $"Product 12345",
Price = 100m,
Quantity = 2m,
TotalPrice = 200m,
Updated = DateTime.UtcNow
};
await microQuery.ExecuteAsync(@"
INSERT INTO [dbo].[Inventory]
([WarehouseId]
,[CategoryId]
,[CategoryDesc]
,[Sku]
,[ProductDesc]
,[Price]
,[Quantity]
,[TotalPrice]
,[Updated])
VALUES
(
@WarehouseId,
@CategoryId,
@CategoryDesc,
@Sku,
@ProductDesc,
@Price,
@Quantity,
@TotalPrice,
@Updated
)", inventoryParams);
or with Stored Procedure:
await microQuery.ExecuteAsync("sp_InsertInventory", inventoryParams, CommandType.StoredProcedure);
"StoredProcedure" methods example:
StoredProcedure methods are used to execute Stored Procedures that return data.
IDbDataParameter[] sqlParams = (new { Sku = inventoryParams.Sku }).ToSqlParams();
IEnumerable<Inventory> data = microQuery.StoredProcedure<Inventory>("sp_GetInventoryBySku", sqlParams);
"SingleResult" methods example:
"SingleResult" methods are used to execute queries that return a single result.
decimal result = await microQuery.SingleResultAsync<decimal>(@"
SELECT TOP (1)
[Price]
FROM [dbo].[Inventory]
");
Test Model:
public class Inventory
{
public string WarehouseId { get; set; }
public string CategoryId { get; set; }
public string CategoryDesc { get; set; }
public string Sku { get; set; }
public string ProductDesc { get; set; }
public decimal? Price { get; set; }
public decimal? Quantity { get; set; }
public decimal? TotalPrice { get; set; }
public DateTime Updated { get; set; }
}
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 | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | 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.1
- Microsoft.Data.SqlClient (>= 5.1.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.