Магазин Microsoft. Как мне получить все цены для всех рынков с кодом C#? - PullRequest
0 голосов
/ 06 августа 2020

Мне нужно получить все цены для всех рынков.

Можно ли получить разные цены для разных рынков (стран), а не только базовую цену для надстройки?

Этот код всегда возвращает только базовую цену:

var context = StoreContext.GetDefault();
var productKinds = new[]
{
    "Application", "Game", "Consumable", "UnmanagedConsumable", "Durable"
};

var associatedProducts = await context.GetAssociatedStoreProductsAsync(productKinds);
var storeProducts = associatedProducts.Products.ToDictionary(x => x.Key, x => x.Value);

var sb = new StringBuilder();
foreach (var (_, product) in storeProducts)
{
    var skus = product.Skus.ToArray();

    sb.AppendLine($"{++counter:D2}. {nameof(StoreProduct)}. StoreId: {product.StoreId}, InAppOfferToken: {product.InAppOfferToken}, " +
                    $"ProductKind: {product.ProductKind}, Language: {product.Language}, Title: {product.Title}, Skus.Length = {skus.Length}.");
    sb.AppendLine("StoreSku:");

    StoreSku storeSku = skus.FirstOrDefault();
    if (storeSku != null)
    {
        var availabilities = storeSku.Availabilities?.ToArray() ?? new StoreAvailability[0];
        foreach (StoreAvailability item in availabilities)
        {
            sb.AppendLine($"    {nameof(StoreAvailability)}. StoreId: {item.StoreId}, Price.CurrencyCode: {item.Price.CurrencyCode}, Price.FormattedPrice: {item.Price.FormattedPrice}.");
        }
    }

    sb.AppendLine();
}

string log = sb.ToString();
Debug.WriteLine(log);

https://partner.microsoft.com/en-us/dashboard/products/{STORE_ID}/submissions/{SUBMISSION_ID}/availability

https://partner.microsoft.com/en-us/dashboard/products/ {STORE_ID} / submissions / {SUBMISSION_ID} / availability

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...