根据另一个列表项值向列表项添加值



>我使用此代码在 C# 中使用来自 Web API 的数据填充列表,该 Web API 从 csv 文件获取数据

HttpClient client = new HttpClient();
HttpResponseMessage response = await client.GetAsync("http://localhost:12345/api/items");
var info = new List<SampleDataGroup>();
if (response.IsSuccessStatusCode)
{
    var content = await response.Content.ReadAsStringAsync();
    var item = JsonConvert.DeserializeObject<dynamic>(content);
    foreach (var data in item)
    {
        var infoSect = new SampleDataGroup
        (
            (string)data.Id.ToString(),
            (string)data.Name,
            (string)"",
            (string)data.PhotoUrl,
            (string)data.Description
        );
        info.Add(infoSect);
    }
}
else
{
    MessageDialog dlg = new MessageDialog("Error");
    await dlg.ShowAsync();
}

我想根据其Name将照片分配给(string)data.PhotoUrl,

例如:如果Name是"汽车",我希望将其分配PhotoUrl"资产/图像/汽车.jpg"。如果列表中的项目Name为"船",请将其PhotoUrl分配给"资产/图像/船.jpg"。

图像不包括在 Web API 馈送的 CSV 文件中。

列表中将有多个项目具有相同的Name,但所有具有相同Name的项目将共享相同的分配图像。

我该怎么做?

new info中的info是什么?是你的某个班级吗?如果是,它是否继承了您键入列表时使用的SampleDataGroup类型?如果是,并且您使用构造函数为其赋值,则使用

data.PhotoUrl = string.Format("Assets/Images/{0}.jpg", data.Name)

评论中所述,if/else这样做将是自杀。如果不是现在,那么肯定是当你决定扩张时。

相关内容

  • 没有找到相关文章

最新更新