An open API service indexing awesome lists of open source software.

https://github.com/kris701/databasesharp

A project to interface and convert values to database STPs
https://github.com/kris701/databasesharp

csharp database

Last synced: 4 months ago
JSON representation

A project to interface and convert values to database STPs

Awesome Lists containing this project

README

          



[![Build and Publish](https://github.com/kris701/DatabaseSharp/actions/workflows/dotnet-desktop.yml/badge.svg)](https://github.com/kris701/DatabaseSharp/actions/workflows/dotnet-desktop.yml)
![Nuget](https://img.shields.io/nuget/v/DatabaseSharp)
![Nuget](https://img.shields.io/nuget/dt/DatabaseSharp)
![GitHub last commit (branch)](https://img.shields.io/github/last-commit/kris701/DatabaseSharp/main)
![GitHub commit activity (branch)](https://img.shields.io/github/commit-activity/m/kris701/DatabaseSharp)
![Static Badge](https://img.shields.io/badge/Platform-Windows-blue)
![Static Badge](https://img.shields.io/badge/Platform-Linux-blue)
![Static Badge](https://img.shields.io/badge/Framework-dotnet--10.0-green)

# DatabaseSharp

This is a project to introduce simpler type conversion when communicating with a database.

The library here is designed to only communicate through STPs, since it is considered more secure than free SQL.

An example of how this works can be seen below:
```csharp
var client = new DBClient("<--Database Connection String Here-->");
var dataset = await client.ExecuteAsync("some-stp");
var table = dataset[0];
var row = table[0];

int someValue = row.GetValue("COL_NAME");
```

You can also deserialize directly into class objects like this:
```csharp
public class SomeClass
{
[DatabaseSharp(ColumnName = "PK_NAME")]
public string Name { get; set; }
[DatabaseSharp(ColumnName = "ACT_VALUE")]
public int Value { get; set; }
}

var client = new DBClient("<--Database Connection String Here-->");
var dataset = await client.ExecuteAsync("some-stp");
var table = dataset[0];
var row = table[0];

SomeClass filled = row.Fill();
```

These are just the methods on the row level.
However you can also use these on the Table level, where it will instead make a list of the items, as such:
```csharp
var client = new DBClient("<--Database Connection String Here-->");
var dataset = await client.ExecuteAsync("some-stp");
var table = dataset[0];

List someValue = table.GetAllValues("COL_NAME");
```

The project is available as a package on the [NuGet Package Manager](https://www.nuget.org/packages/DatabaseSharp/).