/BinanceCryptoCurrency

Binance Crypto Currency Client SDK

Primary LanguageC#MIT LicenseMIT

BinanceCryptoCurrency 0.0.4 (beta version)

Binance Crypto Currency Client SDK

Develop branch
Project Badge

Master branch
Project Badge

How to use

  • Package Manager: Install-Package BinanceCryptoCurrency
  • .Net CLI: dotnet add package BinanceCryptoCurrency
  • Paket CLI: paket add BinanceCryptoCurrency

Nuget Package

https://www.nuget.org/packages/BinanceCryptoCurrency/

Project example

https://github.com/alexandrebl/CryptoCurrencyInfo

Example in .Net Core Web.API

TickerController.cs

using BinanceCryptoCurrency.Domain;
using BinanceCryptoCurrency.Processor;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;

namespace CryptoCurrencyInfo.Controllers {

    [Produces("application/json")]
    [Route("api/Ticker")]
    public class TickerController : Controller {
        private readonly IBinanceProcessor _binanceProcessor;

        public TickerController(IBinanceProcessor binanceProcessor) {
            _binanceProcessor = binanceProcessor;
        }

        public IEnumerable<Ticker> Get() {
            var result = _binanceProcessor.GetTickerLast24Hs();

            return result.Tickers;
        }
    }
}

StartUp.cs

using BinanceCryptoCurrency.Processor;
using CryptoCurrencyInfo.Library;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using System;

namespace CryptoCurrencyInfo {

    public class Startup {

        public Startup(IConfiguration configuration) {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        public static void ConfigureServices(IServiceCollection services) {
            var configurationFileApp = new ConfigurationFileApp();
            services.AddMvc();
            services.AddSingleton<IBinanceProcessor>(
                new BinanceProcessor(new Uri(configurationFileApp.BinanceUrl)));
        }

        public static void Configure(IApplicationBuilder app, IHostingEnvironment env) {
            if (env.IsDevelopment()) {
                app.UseDeveloperExceptionPage();
            }

            app.UseMvc();
        }
    }
}

ConfigurationFileApp.cs

using Microsoft.Extensions.Configuration;
using System.IO;

namespace CryptoCurrencyInfo.Library {

    public sealed class ConfigurationFileApp : IConfigurationFileApp {
        public ConfigurationFileApp() {
            var builder = new ConfigurationBuilder().SetBasePath(
                Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");

            var configuration = builder.Build();

            BinanceUrl = configuration[$"BinanceUrl"];
        }

        public string BinanceUrl { get; }
    }
}

appsettings.json

{
  "BinanceUrl": "http://www.binance.com/api/v1/ticker/24hr"
}