如何确保在第一行addPhoto完成后调用第二个产品addPhoto方法



**嗨,我需要确保产品addphoto第一个方法的Id大于第二个图片addphoto方法的Id(背面图片(如何等待该行执行后再转到下一行?

我曾尝试创建一个async方法,但我遇到了错误,因为该方法不能用async返回void。有什么帮助吗?**

var product = new Product
{
Name = item.Name,
Description = item.Description,

};
product.AddPhoto(item.PictureUrl, pictureFileName);
product.AddPhoto($"back/{item.SKU}$back.png", pictureFileNameBack);
context.Products.Add(product);
}

await context.SaveChangesAsync();
}
public void AddPhoto(string pictureUrl, string fileName, bool isMain = false)
{
var photo = new Photo
{
FileName = fileName,
PictureUrl = pictureUrl
};
if (_photos.Count == 0) photo.IsMain = true;
_photos.Add(photo);
}

Hi请找到下面更新的代码,如果方法没有返回任何值,那么它应该是Task,否则就是该类型的Task。

var product = new Product {
Name = item.Name,
Description = item.Description
};
product.AddPhoto(item.PictureUrl, pictureFileName);
product.AddPhoto($"back/{item.SKU}$back.png", pictureFileNameBack);
context.Products.Add(product);

await context.SaveChangesAsync();

public async Task AddPhoto(string pictureUrl, string fileName, bool isMain = false) {
var photo = new Photo {
FileName = fileName,
PictureUrl = pictureUrl
};
if (_photos.Count == 0) photo.IsMain = true;
_photos.Add(photo);
}

代替:

product.AddPhoto(item.PictureUrl, pictureFileName);
product.AddPhoto($"back/{item.SKU}$back.png", pictureFileNameBack);
context.Products.Add(product);
}

await context.SaveChangesAsync();
}

尝试:

product.AddPhoto(item.PictureUrl, pictureFileName);

context.Products.Add(product);
}

await context.SaveChangesAsync();
product.AddPhoto($"back/{item.SKU}$back.png", pictureFileNameBack);
await context.SaveChangesAsync();
}

最新更新