Пример #1
0
        public void ItemText_MergeEmpty()
        {
            var item1 = new ItemText()
            {
                Items = new List <ItemTextUnit>()
                {
                    new ItemTextUnit("cs-ru", "1"),
                    new ItemTextUnit("cs-cs", "1"),
                }
            };

            var item2 = new ItemText()
            {
                Items = new List <ItemTextUnit>()
                {
                    new ItemTextUnit("cs-ru", "2"),
                    new ItemTextUnit("ru-ru", "1"),
                }
            };

            var item3 = new ItemText();

            item3.Merge(item1, item2);

            Assert.AreEqual("1 2", item3.FirstOrDefault("cs-ru").Text);
            Assert.AreEqual("1", item3.FirstOrDefault("cs-cs").Text);
        }
Пример #2
0
        /// <summary>
        /// Оставляем только элемент с указанным языком, либо любой первый, если указанного нет
        /// </summary>
        /// <param name="language"></param>
        public static ItemTextUnit Localize(this ItemText item, string language)
        {
            var found = item.FirstOrDefault(language);

            return((found != null) ? new ItemTextUnit(found.Language, found.Text) : default(ItemTextUnit));
        }
Пример #3
0
        /// <summary>
        /// Оставляем только элемент с указанным языком, либо любой первый, если указанного нет
        /// </summary>
        /// <param name="filter.Language"></param>
        public static ItemTextUnit FilterOut(this ItemText item, OutputFilter filter)
        {
            var found = item.FirstOrDefault(filter.Language);

            return((found != null) ? new ItemTextUnit(found.Language, found.Text) : default(ItemTextUnit));
        }