将字典中的值分配给列表(C#、WPF)

Assing values from Dictionary to IList (C#, WPF)

我得到方法接口:

Task<Dictionary<long, Cars>> GetCars();

然后我有虚拟机:

private IList<Cars> m_cars;

public IList<Cars> MyCars
{
   get => m_cars;
}

和一些方法:

public override void Load()
{
  MyCars = someservice.GetCars();
}

但我做不到。如何将值从 Dictionary 分配到 IList?

public async override void Load()
{
    var dictionary = await someservice.GetCars();
    MyCars = dictionary.Values.ToList();
}

如果您出于某种未知原因无法将方法标记为 async,因此无法调用 await,您必须同步调用异步方法 GetCars(),这是真的很推荐,为什么同步调用的时候是异步的

为此,您只需调用 Task

.Result
public override void Load()
{
    MyCars = someservice.GetCars().Result.Values.ToList();
}

这里是给定选项的演示

https://dotnetfiddle.net/XCqiLY