fix: 无网络情况下无法进入“插件管理”界面

This commit is contained in:
denglihong2007
2025-10-12 00:47:52 +08:00
parent 4f031e6cdc
commit d3e1c5b0d8
3 changed files with 4 additions and 4 deletions

View File

@@ -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);
}
}

View File

@@ -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

View File

@@ -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 ?? [])
{