Konnector 5.0.0

dotnet add package Konnector --version 5.0.0
                    
NuGet\Install-Package Konnector -Version 5.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="Konnector" Version="5.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Konnector" Version="5.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Konnector" />
                    
Project file
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 Konnector --version 5.0.0
                    
#r "nuget: Konnector, 5.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.
#:package Konnector@5.0.0
                    
#: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=Konnector&version=5.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Konnector&version=5.0.0
                    
Install as a Cake Tool

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 Konnector

  • CloseConnection() Se utiliza para forzar el cierre de la conección actual a la base de datos

  • K.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 datos

  • K.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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .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