Пример #1
0
        static void GroupingAggregation()
        {
            using (var db = new MovieContext())
            {
                /*var projected_movies4 = from a in db.Actors group a by a.Gender into genderGroup select genderGroup;
                 * foreach (var movie in projected_movies4)
                 * {
                 *  Console.WriteLine("+ {0} ", movie.Key);
                 *  foreach (var actor in movie)
                 *  {
                 *      Console.WriteLine("-- {0} ", actor.Name);
                 *  }
                 * }*/
                var result =
                    from m in db.Movies
                    from actor in db.Actors where actor.MovieId == m.Id
                    group actor by actor.Gender into GenderGroup
                    select Tuple.Create(
                        GenderGroup.Key, GenderGroup.Count()
                        );

                Console.WriteLine("Gender | Number of actors");
                foreach (var item in result)
                {
                    Console.WriteLine("{0} | {1} ", item.Item1, item.Item2);
                }
            }
        }
Пример #2
0
        public static string ToText(this long num, string lang = Language.Default, GenderGroup genderGroup = GenderGroup.None)
        {
            var text = string.Empty;

            switch (lang)
            {
            case Language.English:
            case Culture.EnglishUS:
            case Culture.EnglishGB:
                text = EnglishConverter.Instance.ToText(num);
                break;

            case Language.French:
            case Culture.French:
                text = FrenchConverter.Instance.ToText(num);
                break;

            case Language.Russian:
            case Culture.Russian:
                text = RussianConverter.Instance.ToText(num);
                break;

            case Language.Spanish:
            case Culture.Spanish:
                text = SpanishConverter.Instance.ToText(num, genderGroup);
                break;

            case Language.Turkish:
            case Culture.Turkish:
                text = TurkishConverter.Instance.ToText(num);
                break;

            case Language.Ukrainian:
            case Culture.Ukrainian:
                text = UkrainianConverter.Instance.ToText(num);
                break;

            case Language.Bulgarian:
            case Culture.Bulgarian:
                text = BulgarianConverter.Instance.ToText(num);
                break;

            case Language.Amharic:
            case Culture.EthiopianAM:
                text = EthiopianConverter.Instance.ToText(num);
                break;

            case Language.Polish:
            case Culture.Polish:
                text = PolishConverter.Instance.ToText(num);
                break;

            case Language.Belarusian:
            case Culture.Belarusian:
                text = BelarusianConverter.Instance.ToText(num);
                break;
            }
            return(text);
        }
        public virtual string ToText(long num, GenderGroup genderGroup = GenderGroup.None)
        {
            NumberLimitControl(num);

            var builder = new StringBuilder();

            if (num == 0)
            {
                builder.Append(NumberTexts[num][0]);
                return(builder.ToString());
            }

            foreach (var scale in ScaleTexts)
            {
                num = Append(num, scale.Key, builder);
            }
            AppendLessThanOneThousand(num, builder);

            return(builder.ToString().Trim());
        }
 protected virtual string ToText(long num, CurrencyModel currencyModel, bool isMainUnit, GenderGroup genderGroup = GenderGroup.None)
 {
     return(ToText(num, genderGroup));
 }
        public virtual string ToText(decimal num, string currency, Options options, GenderGroup genderGroup = GenderGroup.None)
        {
            var builder = new StringBuilder();

            if (currency == Currency.TL)
            {
                currency = Currency.TRY;
            }
            var currencyModel = GetCurrencyModel(currency);

            if (currencyModel == null)
            {
                return(string.Empty);
            }
            var decimalSeperator = num.ToString(CultureInfo.InvariantCulture).Contains(",") ? ',' : '.';
            var nums             = num.ToString(CultureInfo.InvariantCulture).Split(decimalSeperator).ToList();

            if (nums.Count == 1)
            {
                nums.Add("00");
            }

            var mainUnitNum = Convert.ToInt64(nums[0]);

            if (options.MainUnitNotConvertedToText)
            {
                builder.Append(nums[0]);
            }
            else
            {
                var mainUnitText = ToText(mainUnitNum, currencyModel, true);
                mainUnitText = options.MainUnitFirstCharUpper ? mainUnitText.ToFirstLetterUpper(CultureName) : mainUnitText;
                builder.Append(mainUnitText);
            }

            builder.Append(" ");

            var currencyText = GetCurrencyText(mainUnitNum, currencyModel);

            currencyText = options.CurrencyFirstCharUpper ? currencyText.ToFirstLetterUpper(CultureName) : currencyText;
            builder.Append(currencyText);


            if (nums.Count > 1 && !string.IsNullOrEmpty(nums[1]))
            {
                var subUnitText = nums[1].PadRight(2, '0');
                var subUnitNum  = Convert.ToInt64(subUnitText);
                if (!options.SubUnitZeroNotDisplayed || subUnitNum != 0)
                {
                    builder.Append(" ");

                    if (options.SubUnitNotConvertedToText)
                    {
                        builder.Append(subUnitText);
                    }
                    else
                    {
                        subUnitText = ToText(subUnitNum, currencyModel, false);
                        subUnitText = options.SubUnitFirstCharUpper ? subUnitText.ToFirstLetterUpper(CultureName) : subUnitText;
                        builder.Append(subUnitText);
                    }

                    builder.Append(" ");

                    var subUnitCurrencyText = GetSubUnitCurrencyText(subUnitNum, currencyModel);
                    subUnitCurrencyText = options.CurrencyFirstCharUpper ? subUnitCurrencyText.ToFirstLetterUpper(CultureName) : subUnitCurrencyText;
                    builder.Append(subUnitCurrencyText);
                }
            }

            return(builder.ToString().Trim());
        }
Пример #6
0
        public static string ToText(this decimal num, string currency, string lang = Language.Default, Options options = new Options(), GenderGroup genderGroup = GenderGroup.None)
        {
            var text = string.Empty;

            switch (lang)
            {
            case Language.English:
            case Culture.EnglishUS:
            case Culture.EnglishGB:
                text = EnglishConverter.Instance.ToText(num, currency, options);
                break;

            case Language.French:
            case Culture.French:
                text = FrenchConverter.Instance.ToText(num, currency, options);
                break;

            case Language.Russian:
            case Culture.Russian:
                text = RussianConverter.Instance.ToText(num, currency, options);
                break;

            case Language.Spanish:
            case Culture.Spanish:
                text = SpanishConverter.Instance.ToText(num, currency, options, genderGroup);
                break;

            case Language.Turkish:
            case Culture.Turkish:
                text = TurkishConverter.Instance.ToText(num, currency, options);
                break;

            case Language.Ukrainian:
            case Culture.Ukrainian:
                text = UkrainianConverter.Instance.ToText(num, currency, options);
                break;

            case Language.Indonesian:
            case Culture.Indonesian:
                text = IndonesianConverter.Instance.ToText(num, currency, options);
                break;
            }
            return(text);
        }
Пример #7
0
 public static string ToText(this int num, string lang = Language.Default, GenderGroup genderGroup = GenderGroup.None)
 {
     return(ToText(Convert.ToInt64(num), lang.ToLower(), genderGroup));
 }
Пример #8
0
 protected override string ToText(long num, CurrencyModel currencyModel, bool isMainUnit, GenderGroup genderGroup = GenderGroup.None)
 {
     //todo:
     return(base.ToText(num, currencyModel, isMainUnit, genderGroup));
 }
Пример #9
0
 public override string ToText(decimal num, string currency, Options options, GenderGroup genderGroup = GenderGroup.None)
 {
     //todo:
     return(base.ToText(num, currency, options, genderGroup));
 }