Пример #1
0
        private static void ParseItems(string itemFile, string outputFolder)
        {
            using (StreamReader reader = new StreamReader(itemFile))
            {
                RawItems       rawItems       = RawItems.FromJson(reader.ReadToEnd());
                ProcessedItems processedItems = new ProcessedItems();

                foreach (RawItem rawItem in rawItems.Items)
                {
                    if (rawItem.Price < 0)
                    {
                        continue;
                    }

                    rawItem.Category = RecategorizeItem(rawItem);

                    ProcessedItem processedItem = ProcessedItem.FromRawItem(rawItem);
                    processedItems.Items.Add(processedItem);
                }

                processedItems.Sort();

                string outputFileItems = Path.Combine(outputFolder, "StoreItems.json");

                GenerateItemsOutput(processedItems, outputFileItems);
            }
        }
Пример #2
0
        public static RawItems FromJson(string json)
        {
            RawItems items = JsonConvert.DeserializeObject <RawItems>(json, Settings);

            items.Items.Sort((item1, item2) =>
            {
                if (!string.Equals(item1.Category, item2.Category, StringComparison.OrdinalIgnoreCase))
                {
                    return(string.Compare(item1.Category, item2.Category, StringComparison.OrdinalIgnoreCase));
                }

                return(string.Compare(item1.Name, item2.Name, StringComparison.OrdinalIgnoreCase));
            });

            return(items);
        }