首页 > 解决方案 > C# - 报告 Woocommerce.net 调用的进度

问题描述

我正在开发一个使用 Woocommerce.net 库进行 RESP API 调用的小型 C# 应用程序。我的目标是从我已经完成的在线商店中检索所有产品。但是,在检索产品时,我希望最好使用进度条向用户显示进度。这是我用于检索产品的代码。

RestAPI rest = new RestAPI("https://www.store.ca/wp-json/wc/v3/", "key", "key");
            WCObject wc = new WCObject(rest);

            //Get all products

            products = new List<Product>();
            Dictionary<string, string> dic1 = new Dictionary<string, string>();
            dic1.Add("per_page", "100");
            int pageNumber1 = 1;
            dic1.Add("page", pageNumber1.ToString());

            bool endWhile1 = false;
            while (!endWhile1)
            {
                var productsTemp = await wc.Product.GetAll(dic1);
                
                if (productsTemp.Count > 0)
                {
                    products.AddRange(productsTemp);
                    pageNumber1++;
                    dic1["page"] = pageNumber1.ToString();
                }
                else
                {
                    endWhile1 = true;
                }
            }

有什么方法可以报告此类通话的进度。我找不到与此相关的任何内容。我遇到了,IProgress<int>但我相信这在这种情况下行不通。

有任何想法吗?

任何帮助表示赞赏。

提前致谢。

标签: c#woocommercerestprogress

解决方案


您阅读对象'每页'。1.如果你能得到产品数量请先做(版本3有计数方法)2.进度步骤将是(页码* 100个项目)你可以在addRange之后立即通知


推荐阅读