Exemplo n.º 1
0
        public static IEnumerable <ResourceString> Generate(ResourceIdType resourceIdType, LocalizedString localizedString)
        {
            string [] translated;

            if (localizedString.HasValidTranslations)
            {
                translated = localizedString.TranslatedValues;
            }
            else
            {
                translated = new [] {
                    localizedString.UntranslatedSingularValue,
                    localizedString.UntranslatedPluralValue
                };
            }

            for (int i = 0; i < translated.Length; i++)
            {
                if (translated [i] == null ||
                    (i == 0 && String.IsNullOrWhiteSpace(localizedString.UntranslatedSingularValue)))
                {
                    continue;
                }

                yield return(new ResourceString {
                    Id = Catalog.GetResourceId(resourceIdType,
                                               localizedString.Context, localizedString.UntranslatedSingularValue,
                                               localizedString.Gender, i),
                    Untranslated = localizedString.UntranslatedSingularValue,
                    Translated = translated [i]
                });
            }
        }