Files
Ayay/SHH.CameraDashboard/Services/WebApis/MonitorRepository.cs
2026-01-01 22:40:32 +08:00

38 lines
1.2 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
namespace SHH.CameraDashboard
{
public class MonitorRepository
{
private const string MODULE = "MonitorAPI";
public async Task<MonitorWebApiData> GetDashboardDataAsync()
{
try
{
var json = await WebApiService.Instance.GetAsync(WebApiRoutes.Monitor.Dashboard, MODULE);
// 1. 反序列化
var data = JsonHelper.Deserialize<MonitorWebApiData>(json);
// 2. 【核心修复】空合并运算符
// 如果 data 为 null立即 new 一个空对象返回
return data ?? new MonitorWebApiData();
}
catch
{
// 3. 【兜底】发生任何异常(断网/解析错误),返回空对象
// 保证 ViewModel 拿到永远是实例
return new MonitorWebApiData();
}
}
public async Task<string> GetSnapshotUrlAsync(string id)
{
// 假设返回的是图片 URL 或者是 Base64
return await WebApiService.Instance.GetAsync(WebApiRoutes.Monitor.Snapshot(id), MODULE);
}
}
public class MonitorWebApiData
{
}
}