mirror of
https://github.com/JKorf/CryptoExchange.Net.git
synced 2026-08-12 08:53:01 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8788dd3deb | |||
| f64cc5e9cf | |||
| 75d1bbc6e8 |
@@ -6,16 +6,16 @@
|
||||
<PackageId>CryptoExchange.Net</PackageId>
|
||||
<Authors>JKorf</Authors>
|
||||
<Description>A base package for implementing cryptocurrency API's</Description>
|
||||
<PackageVersion>6.2.0</PackageVersion>
|
||||
<AssemblyVersion>6.2.0</AssemblyVersion>
|
||||
<FileVersion>6.2.0</FileVersion>
|
||||
<PackageVersion>6.2.1</PackageVersion>
|
||||
<AssemblyVersion>6.2.1</AssemblyVersion>
|
||||
<FileVersion>6.2.1</FileVersion>
|
||||
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
|
||||
<RepositoryType>git</RepositoryType>
|
||||
<RepositoryUrl>https://github.com/JKorf/CryptoExchange.Net.git</RepositoryUrl>
|
||||
<PackageProjectUrl>https://github.com/JKorf/CryptoExchange.Net</PackageProjectUrl>
|
||||
<NeutralLanguage>en</NeutralLanguage>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
<PackageReleaseNotes>6.2.0 - Added SerializerOptions helper class for setting a default serializer, Added ParameterCollection helper class for easier parameter definition, Added extra helper methods AuthenticationProvider, Remove interface entries meant for internal use, Added support for writing int values to the EnumConverter</PackageReleaseNotes>
|
||||
<PackageReleaseNotes>6.2.1 - Utility methods</PackageReleaseNotes>
|
||||
<Nullable>enable</Nullable>
|
||||
<LangVersion>10.0</LangVersion>
|
||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using CryptoExchange.Net.Objects;
|
||||
using System;
|
||||
using System.Security.Cryptography;
|
||||
|
||||
namespace CryptoExchange.Net
|
||||
{
|
||||
@@ -8,6 +9,8 @@ namespace CryptoExchange.Net
|
||||
/// </summary>
|
||||
public static class ExchangeHelpers
|
||||
{
|
||||
private const string _allowedRandomChars = "ABCDEFGHIJKLMONOPQRSTUVWXYZabcdefghijklmonopqrstuvwxyz0123456789";
|
||||
|
||||
/// <summary>
|
||||
/// The last used id, use NextId() to get the next id and up this
|
||||
/// </summary>
|
||||
@@ -140,5 +143,43 @@ namespace CryptoExchange.Net
|
||||
return _lastId;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Generate a random string of specified length
|
||||
/// </summary>
|
||||
/// <param name="length">Length of the random string</param>
|
||||
/// <returns></returns>
|
||||
public static string RandomString(int length)
|
||||
{
|
||||
var randomChars = new char[length];
|
||||
|
||||
#if NETSTANDARD2_1_OR_GREATER
|
||||
for (int i = 0; i < length; i++)
|
||||
randomChars[i] = _allowedRandomChars[RandomNumberGenerator.GetInt32(0, _allowedRandomChars.Length)];
|
||||
#else
|
||||
var random = new Random();
|
||||
for (int i = 0; i < length; i++)
|
||||
randomChars[i] = _allowedRandomChars[random.Next(0, _allowedRandomChars.Length)];
|
||||
#endif
|
||||
|
||||
return new string(randomChars);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Generate a random string of specified length
|
||||
/// </summary>
|
||||
/// <param name="source">The initial string</param>
|
||||
/// <param name="totalLength">Total length of the resulting string</param>
|
||||
/// <returns></returns>
|
||||
public static string AppendRandomString(string source, int totalLength)
|
||||
{
|
||||
if (totalLength < source.Length)
|
||||
throw new ArgumentException("Total length smaller than source string length", nameof(totalLength));
|
||||
|
||||
if (totalLength == source.Length)
|
||||
return source;
|
||||
|
||||
return source + RandomString(totalLength - source.Length);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,16 +5,16 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Binance.Net" Version="9.1.4" />
|
||||
<PackageReference Include="Bitfinex.Net" Version="7.0.3" />
|
||||
<PackageReference Include="Bittrex.Net" Version="8.0.2" />
|
||||
<PackageReference Include="Bybit.Net" Version="3.1.3" />
|
||||
<PackageReference Include="CoinEx.Net" Version="6.0.2" />
|
||||
<PackageReference Include="Huobi.Net" Version="5.0.2" />
|
||||
<PackageReference Include="JK.Bitget.Net" Version="0.0.1" />
|
||||
<PackageReference Include="JK.OKX.Net" Version="1.4.1" />
|
||||
<PackageReference Include="KrakenExchange.Net" Version="4.1.4" />
|
||||
<PackageReference Include="Kucoin.Net" Version="5.0.4" />
|
||||
<PackageReference Include="Binance.Net" Version="9.1.5" />
|
||||
<PackageReference Include="Bitfinex.Net" Version="7.0.4" />
|
||||
<PackageReference Include="Bittrex.Net" Version="8.0.3" />
|
||||
<PackageReference Include="Bybit.Net" Version="3.2.1" />
|
||||
<PackageReference Include="CoinEx.Net" Version="6.0.3" />
|
||||
<PackageReference Include="Huobi.Net" Version="5.0.3" />
|
||||
<PackageReference Include="JK.Bitget.Net" Version="1.0.0" />
|
||||
<PackageReference Include="JK.OKX.Net" Version="1.4.2" />
|
||||
<PackageReference Include="KrakenExchange.Net" Version="4.1.5" />
|
||||
<PackageReference Include="Kucoin.Net" Version="5.0.5" />
|
||||
<PackageReference Include="Serilog.AspNetCore" Version="6.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Binance.Net" Version="9.1.3" />
|
||||
<PackageReference Include="Bitfinex.Net" Version="7.0.2" />
|
||||
<PackageReference Include="Bittrex.Net" Version="8.0.1" />
|
||||
<PackageReference Include="Bybit.Net" Version="3.1.2" />
|
||||
<PackageReference Include="CoinEx.Net" Version="6.0.1" />
|
||||
<PackageReference Include="Huobi.Net" Version="5.0.1" />
|
||||
<PackageReference Include="JK.Bitget.Net" Version="0.0.1" />
|
||||
<PackageReference Include="JK.OKX.Net" Version="1.4.0" />
|
||||
<PackageReference Include="KrakenExchange.Net" Version="4.1.3" />
|
||||
<PackageReference Include="Kucoin.Net" Version="5.0.3" />
|
||||
<PackageReference Include="Binance.Net" Version="9.1.5" />
|
||||
<PackageReference Include="Bitfinex.Net" Version="7.0.4" />
|
||||
<PackageReference Include="Bittrex.Net" Version="8.0.3" />
|
||||
<PackageReference Include="Bybit.Net" Version="3.2.1" />
|
||||
<PackageReference Include="CoinEx.Net" Version="6.0.3" />
|
||||
<PackageReference Include="Huobi.Net" Version="5.0.3" />
|
||||
<PackageReference Include="JK.Bitget.Net" Version="1.0.0" />
|
||||
<PackageReference Include="JK.OKX.Net" Version="1.4.2" />
|
||||
<PackageReference Include="KrakenExchange.Net" Version="4.1.5" />
|
||||
<PackageReference Include="Kucoin.Net" Version="5.0.5" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
||||
@@ -31,6 +31,9 @@ Make a one time donation in a crypto currency of your choice. If you prefer to d
|
||||
Alternatively, sponsor me on Github using [Github Sponsors](https://github.com/sponsors/JKorf).
|
||||
|
||||
## Release notes
|
||||
* Version 6.2.1 - 28 Oct 2023
|
||||
* Utility methods
|
||||
|
||||
* Version 6.2.0 - 24 Oct 2023
|
||||
* Added SerializerOptions helper class for setting a default serializer
|
||||
* Added ParameterCollection helper class for easier parameter definition
|
||||
|
||||
Reference in New Issue
Block a user