mirror of
https://github.com/denglihong2007/CRSim
synced 2026-08-09 02:56:00 +08:00
fix: 无网络情况下无法进入“插件管理”界面
This commit is contained in:
@@ -7,7 +7,7 @@ namespace CRSim.Core.Abstractions
|
||||
{
|
||||
Task<List<TrainStop>?> GetTimeTableAsync(string number);
|
||||
Task<List<TrainStop>?> GetTrainNumbersAsync(string name);
|
||||
List<PluginManifest>? GetOnlinePlugins(string uri);
|
||||
Task<List<PluginManifest>?> GetOnlinePluginsAsync(string uri);
|
||||
Task<UpdateInfo?> GetUpdateAsync(string uri);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -138,12 +138,12 @@ namespace CRSim.Core.Services
|
||||
return null;
|
||||
}
|
||||
|
||||
public List<PluginManifest>? GetOnlinePlugins(string url)
|
||||
public async Task<List<PluginManifest>?> GetOnlinePluginsAsync(string url)
|
||||
{
|
||||
try
|
||||
{
|
||||
var client = new HttpClient();
|
||||
var response = client.GetStringAsync(url).Result;
|
||||
var response = await client.GetStringAsync(url);
|
||||
return JsonSerializer.Deserialize(response, JsonContextWithCamelCase.Default.ListPluginManifest);
|
||||
}
|
||||
catch
|
||||
|
||||
@@ -130,7 +130,7 @@ public class PluginService : IPluginService
|
||||
}
|
||||
public async Task LoadOnlinePluginsAsync()
|
||||
{
|
||||
var pluginManifests = _networkService.GetOnlinePlugins(IndexUrl);
|
||||
var pluginManifests = await _networkService.GetOnlinePluginsAsync(IndexUrl);
|
||||
IPluginService.OnlinePluginsInternal.Clear();
|
||||
foreach (var Manifest in pluginManifests ?? [])
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user