Konnector 5.0.0
dotnet add package Konnector --version 5.0.0
NuGet\Install-Package Konnector -Version 5.0.0
<PackageReference Include="Konnector" Version="5.0.0" />
<PackageVersion Include="Konnector" Version="5.0.0" />
<PackageReference Include="Konnector" />
paket add Konnector --version 5.0.0
#r "nuget: Konnector, 5.0.0"
#:package Konnector@5.0.0
#addin nuget:?package=Konnector&version=5.0.0
#tool nuget:?package=Konnector&version=5.0.0
Konnector
Konnector es una API para base de datos, cuenta con funciones que te ayudarán realizar operaciones CRUD al instante asi como mapear tablas a clases in runtime.
Constructor
New(DBConnection as IConnection) Al instanciar un nuevo objeto debe tener el namespace ORM para poder crear un nuevo objeto Konnector el cual recibe por parametro en su constructor una dependencia de interfaz IConnection que tiene 2 propiedades la cadena de conexión y el motor de la base de datos, siendo 1 Access y 2 MSSQL.
Imports ORM
Imports Connections
public class KonnectorSampleClass
Private K As Konnector = Nothing
Sub New()
'DBEngine 1=Access,2=MSSQL
K = New Konnector(New IConnection
With {.ConnectionString="",.DBEngine=1})
End Sub
End class
KonnectorCatalog
Es la clase base de KonnectorORM cuando heredamos una clase que representa nuestra tabla en la base de datos, debemos implementar las 3 (_TableName,_PrimaryKey,_ID) propiedades para conectar nuestra clase con la base de datos.
Imports ORM
Public Class Users : Inherits KonnectorCatalog
Public Overrides ReadOnly Property _TableName As String
Get
Return "Users"
End Get
End Property
Public Overrides ReadOnly Property _PrimaryKey As String
Get
Return "UserID"
End Get
End Property
Public Overrides Property _ID As Long
Get
Return Me.UserID
End Get
Set(value As Long)
Me.UserID = value
End Set
End Property
End class
Propiedades base
- TableName : String
- Esta propiedad, debe retornar el nombre de la tabla que Konnector va a mapear.
- PrimaryKey : String
- Es el nombre de la llave primaria de nuestra tabla.
- ID : Long
- En esta propiedad deberás indicar la propiedad de la clase que representa la llave primaria .
Funciones
Create(Of KonnectorCatalog):KonnectorCatalog
Regresa un nuevo objeto KonnectorCatalog e inyecta 4 eventos listos que pueden afectar a la base de datos.
- Insert(): Inserta en la base de datos los valores de la clase y regresa el Identity en la propiedad ID
- Update(): Actualiza la información en la base de datos
- Delete(): Borra el registro en la base de datos
- IsValidData(): Valida los datos ingresados vs el xml de validaciónes
Dim User As User = K.Create(Of User)()
User.UserName = "NuevoUsuario"
User.Email = "usermail@mail.com"
User.Rating = 99.5
User.CreatedOn = Now
If User.IsValidData() Then
User.Insert()
Else
'La excepción que arroja IsValidData cuando es false
Throw .ExceptionValidation
End If
User.UserName = "NuevoUsuarioModificado"
User.Update()'<--Actuliza en base de datos
User.Delete()'<--Borra de la base de datos
ExecuteNonQuery(SQLQuery):Integer
Lo puedes usar para hacer updates masivos, inserts, deletes directamente con sentencias SQL
K.ExecuteNonQuery("
update Users set UserName = UserName + '(ID:' + UserID + ')'
")
ExecuteScalar(SQLNumericQuery):Double
Lo puedes usar para hacer ejecutar consultas que devuelven un valor númerico
Dim NumberOfUsers As Double = K.ExecuteScalar(
"select count(*) from Users"
)
GetCatalogList(Of KonnectorCatalog)(Filters):List(Of KonnectorCatalog)
Recupera los registros de un catálogo (tabla) filtrando por sus columnas NOTA: Los objetos recuperados pueden invocar los metodos Insert(),Update(),Delete(),IsValidData()
Dim BestUsersRanking As List(Of Users) = k.GetCatalogList(Of Users)("UserName like 'J%' AND Rating>=8.5 ")
GetCatalogItem(Of KonnectorCatalog)(Filters):KonnectorCatalog
Recupera un único registro de un catálogo (tabla en la base) filtrando por sus columnas
NOTA: El objeto recuperado puede invocar los métodos Insert(),Update(),Delete(),IsValidData()
Dim User = K.GetCatalogItem(Of Users)("UserID=1")
User.UserName = User.UserName & "(" & User.UserID & ")"
User.Update()
GetDataTable(SQLQuery):System.Data.DataTable
Ejecuta un query y devuelve un objeto System.Data.Datatable
Dim MyDataTable As System.Data.DataTable = K.GetdataTable("select * from Comments where UserID = 1 order by CreatedOn desc")
GetRecordSet(Of Type)(SQLQuery):List(Of Type)
Este método ejecuta el query de Sql y el resultado lo convierte a entidades del tipo que se pasa por parametro en la función. Regresa una lista de objetos donde cada registro de la consulta se mapeara automaticamente al tipo que se pasa por parametro en la función. Nota: Esta funcion es de solo lectura y no se pueden invocar los metodos Insert(),Update(),Delete(),IsValidData()
Dim Comentarios As List(Of UserComments) = K.GetRecordSet(Of UserComments)("select Users.*,Comments.* from Users inner join Comments on Comments.UserID = Users.UserID")
GetRecord(Of Type)(SQLQuery):Type
Este metodo ejecuta el query de Sql y el resultado lo convierte a entidades del tipo que se pasa por parametro en la función. Regresa un solo objeto de la consulta se mapeara automaticamente al tipo que se pasa por parametro en la función. Nota: Esta funcion es de solo lectura y no se pueden invocar los metodos Insert(),Update(),Delete(),IsValidData()
Dim Comentario As UserComments = K.GetRecord(Of UserComments)("select top 1 Users.*,Comments.* from Users inner join Comments on Comments.UserID = Users.UserID")
LookUp("Field","Table","Conditions"):String
Esta función recupera un valor alfanumerico indicando el nombre del campo, nombre de la tabla y filtros SQL de la tabla
Dim UserName = K.LookUp("UserName", "Users", "UserID=1")
LookUpValue("Field","Table","Conditions"):Double
Esta función recupera un valor de tipo double indicando el nombre del campo númerico, nombre de la tabla y filtros SQL de la tabla
Dim Rating = K.LookUpValue("Rating", "Users", "UserID=1")
Métodos
Dispose()
Se utiliza para limpiar la memoria los objetos internos usados por KonnectorCloseConnection()
Se utiliza para forzar el cierre de la conección actual a la base de datosK.BeginTransaction()
Se utiliza indicar el comienzo de un bloque de acciones hacia la base de datos.K.CommitTransaction()
Se utiliza para registrar todas las operaciones en la base de datosK.RollBackTransaction()
Se utiliza para dar marcha atrás a los cambios que se hayan realizado en la base de datos después de haber iniciado una transacción con BeginTransaction()
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net461 is compatible. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 is compatible. net481 is compatible. |
-
.NETFramework 4.6.1
- No dependencies.
-
.NETFramework 4.7.2
- No dependencies.
-
.NETFramework 4.8
- No dependencies.
-
.NETFramework 4.8.1
- No dependencies.
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 |
---|---|---|
5.0.0 | 132 | 10/28/2024 |
v5.0.0.0
* Cambia el nombre de KonnectorORM a Konnector
* Se agrega el método CopyFrom, copia el valor de las propiedades que coincida el nombre (No case sensitive)
* Se eliminan corchetes para permitir el uso de name spaces en el valor de la propiedad TableName
* Nueva interface IRepository(Of T) y servicio RepositoryBase(Of T) para inyección de dependencias
* La propiedad base XmlValidations es opcional, puede sobreescribirse
* Los nombres de las propiedades base cambian de nombre con un sufijo "_".
TableName -> _TableName
PrimaryKey -> _PrimaryKey
ID -> _ID
* Al utilizar el metodo CREATE se inyecta el Konnector en el objeto, se puede acceder a el como una propiedad publica que tienen todas las clases que heredan KonnectroCatalog