You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
932 B
42 lines
932 B
using Microsoft.Extensions.Logging;
|
|
using System;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace MyAvaloniaApp.Services;
|
|
|
|
/// <summary>
|
|
/// 数据服务实现
|
|
/// </summary>
|
|
public class DataService : IDataService
|
|
{
|
|
private readonly ILogger<DataService>? _logger;
|
|
private string _data = "示例数据";
|
|
|
|
public DataService(ILogger<DataService>? logger = null)
|
|
{
|
|
_logger = logger;
|
|
_logger?.LogInformation("DataService 已创建");
|
|
}
|
|
|
|
public string GetData()
|
|
{
|
|
_logger?.LogDebug("获取数据: {Data}", _data);
|
|
return _data;
|
|
}
|
|
|
|
public async Task<string> GetDataAsync()
|
|
{
|
|
_logger?.LogDebug("异步获取数据");
|
|
|
|
// 模拟异步操作
|
|
await Task.Delay(100);
|
|
|
|
return _data;
|
|
}
|
|
|
|
public void SaveData(string data)
|
|
{
|
|
_data = data;
|
|
_logger?.LogInformation("数据已保存: {Data}", data);
|
|
}
|
|
}
|
|
|