我正在寻找一种方法来“划分”需要完成的多个操作以提高效率。
让我举一个例子来解释我的需求。
假设我有这个对象:
public class CardInfo
{
public int mCardID { get; set; }
public string mCardName { get; set; }
public int? mCardNumber { get; set; }
public string mCardColor { get; set; }
(...)
}
每个对象都可以链接到一个价目表对象:
public class PriceListInfo
{
public int mPriceListId { get; set; }
public int mPriceProviderID { get; set; }
public PriceProviderInfo mPriceListProvider { get; set; }
public int mCardID { get; set; }
public CardInfo mCard { get; set; }
public decimal? mPriceLow { get; set; }
public decimal? mPriceMid { get; set; }
public decimal? mPriceHigh { get; set; }
}
现在我有一个过程,其任务是实际获取卡片列表并构建每张卡片的价格表,如下所示:
List<CardInfo> listCards = mCardManager.ListCardsForCardSet(_cardSetID);
foreach(var card in listCards)
{
List<PriceListInfo> listPrices = mPriceManager.ListPricesForCar(card);
}
很简单的事情,但是如果卡片列表包含超过 500 个项目,则需要一段时间。我想知道(由于我对 Asp.Net 不太了解,这就是我问这个问题的原因)是否有办法将列表除以 [X] 数字然后多次启动该List<PriceListInfo> listPrices = mPriceManager.ListPricesForCar(card);
行?或者有没有办法使这些操作异步?(请原谅我的无知,谢谢。)任何人都可以解释我该如何进行,如果你能提供一个例子,我会非常高兴。