diff --git a/BTCPayServer/BTCPayServer.csproj b/BTCPayServer/BTCPayServer.csproj
index 49e53e678..794789a78 100644
--- a/BTCPayServer/BTCPayServer.csproj
+++ b/BTCPayServer/BTCPayServer.csproj
@@ -2,7 +2,7 @@
Exe
netcoreapp2.0
- 1.0.1.15
+ 1.0.1.16
diff --git a/BTCPayServer/Controllers/RateController.cs b/BTCPayServer/Controllers/RateController.cs
index 40055004c..3a2170ce6 100644
--- a/BTCPayServer/Controllers/RateController.cs
+++ b/BTCPayServer/Controllers/RateController.cs
@@ -33,16 +33,27 @@ namespace BTCPayServer.Controllers
[HttpGet]
[BitpayAPIConstraint]
public async Task GetRates(string cryptoCode = null, string storeId = null)
+ {
+ var result = await GetRates2(cryptoCode, storeId);
+ var rates = (result as JsonResult)?.Value as NBitpayClient.Rate[];
+ if(rates == null)
+ return result;
+ return Json(new DataWrapper(rates));
+ }
+
+ [Route("api/rates")]
+ [HttpGet]
+ public async Task GetRates2(string cryptoCode = null, string storeId = null)
{
cryptoCode = cryptoCode ?? "BTC";
- var network= _NetworkProvider.GetNetwork(cryptoCode);
+ var network = _NetworkProvider.GetNetwork(cryptoCode);
if (network == null)
return NotFound();
var rateProvider = _RateProviderFactory.GetRateProvider(network);
if (rateProvider == null)
return NotFound();
- if(storeId != null)
+ if (storeId != null)
{
var store = await _StoreRepo.FindStore(storeId);
if (store == null)
@@ -51,22 +62,13 @@ namespace BTCPayServer.Controllers
}
var allRates = (await rateProvider.GetRatesAsync());
- return Json(new DataWrapper
- (allRates.Select(r =>
+ return Json(allRates.Select(r =>
new NBitpayClient.Rate()
{
Code = r.Currency,
Name = _CurrencyNameTable.GetCurrencyData(r.Currency)?.Name,
Value = r.Value
- }).Where(n => n.Name != null).ToArray()));
-
- }
-
- [Route("api/rates")]
- [HttpGet]
- public Task GetRates2(string cryptoCode = null, string storeId = null)
- {
- return GetRates(cryptoCode, storeId);
+ }).Where(n => n.Name != null).ToArray());
}
}
}