错误 CS1503参数2:无法从'System.Collections.Generic.List'到'System.Collections.Generic.IEnumerable
public async System.Threading.Tasks.Task SerializeAsync(List<ProgrammInfo> list)
{
using (FileStream fs = File.AppendAllLines("save3.json", list))
{
var options = new JsonSerializerOptions
{
WriteIndented = true
};
await JsonSerializer.SerializeAsync(fs, list, options);
}
}
原因是变量列表不是字符串列表,而是ProgramInfo列表。通过使用Linq,您可以像这样更改代码:
public async System.Threading.Tasks.Task SerializeAsync(List<ProgrammInfo> list)
{
var stringList = list.Select(x => x.ToString());
using (FileStream fs = File.AppendAllLines("save3.json", stringList))
...
但是我无法使代码运行,因为AppendAllLines返回void ...并将对象序列化为json并将其写入文件可以更容易地完成,如Knoop所说。