Skip to content

guibranco/Sankhya-SDK-dotnet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Sankhya SDK

πŸ“Šβš™οΈ Sankhya .NET SDK.

GitHub license Time tracker

Sankhya logo

CI/CD

Build status Last commit Tests Coverage Code Smells LoC
Build status GitHub last commit AppVeyor tests (branch) Coverage Code Smells Lines of Code

Code Quality

Codacy Badge Codacy Badge

codecov CodeFactor

Maintainability Test Coverage

Quality Gate Status Maintainability Rating

Technical Debt Duplicated Lines (%)

Reliability Rating Security Rating

Bugs Vulnerabilities


Installation

Github Releases

GitHub last release Github All Releases

Download the latest .zip file from the Releases page.

Nuget package manager

Package Version Downloads
Sankhya Sankhya NuGet Version Sankhya NuGet Downloads

Features

The SDK provides a comprehensive implementation of Sankhya's web services. If the service you need is not included, you can independently implement the request/response and contribute via pull requests.

Key Highlights

  • Know Services: Predefined service wrappers for common operations.
  • Sankhya Wrapper: Handles low-level HTTP requests, serialization, and authentication.
  • Extensibility: Add custom functionality by extending the SDK.

For details, check the Know Services Wiki.


Usage

Dependency Injection (IoC)

Register the Sankhya wrapper using the CrispyWaffle toolkit's Service Locator:

var connectionSankhya = new Connection(); // Fill in your details
ServiceLocator.Register(() => new SankhyaContext(connectionSankhya), LifeStyle.Singleton);

Constructor Injection

public class MyClass
{
    private readonly SankhyaContext _sankhyaContext;

    public MyClass(SankhyaContext sankhyaContext)
    {
        _sankhyaContext = sankhyaContext ?? throw new ArgumentNullException(nameof(sankhyaContext));
    }
}

Manual Resolution

var sankhyaContext = ServiceLocator.Resolve<SankhyaContext>();

Session Management

Retrieve and manage active sessions:

var sessions = KnowServicesRequestWrapper.GetSessions();
foreach (var session in sessions)
{
    KnowServicesRequestWrapper.KillSession(session.Id);
}

Support

If you need help, feel free to open an issue.


Contributing

Contributions are welcome! Check out the CONTRIBUTING.md guide for details.


Contributors

Thanks to all contributors! πŸ’™

guibranco
Guilherme Branco Stracini
fandriyaninkov
Fedor Andriyaninkov
pedrowindisch
Pedro Henrique
viktoriussuwandi
Viktorius Suwandi

Bots

dependabot[bot]
dependabot[bot]
github-actions[bot]
github-actions[bot]
penify-dev[bot]
penify-dev[bot]
stack-file[bot]
stack-file[bot]
gitauto-ai[bot]
gitauto-ai[bot]
codefactor-io[bot]
codefactor-io[bot]
snyk-bot
Snyk bot