示例#1
0
        static Case GetCaseForFirstName(KnownName knownName, string casedName)
        {
            if (casedName.Equals(knownName.Nominative))
            {
                return(Case.Nominative);
            }

            if (casedName.Equals(knownName.Accusative))
            {
                return(Case.Accusative);
            }

            if (casedName.Equals(knownName.Dative))
            {
                return(Case.Dative);
            }

            if (casedName.Equals(knownName.Genitive))
            {
                return(Case.Genitive);
            }

            if (casedName.Equals(knownName.Instrumental))
            {
                return(Case.Instrumental);
            }

            if (casedName.Equals(knownName.Prepositional))
            {
                return(Case.Prepositional);
            }

            return(Case.Nominative);
        }
示例#2
0
            KnownName CreateKnownName(string name, bool isMale)
            {
                _petrovich.SetGender(isMale ? Gender.Male : Gender.Female);

                _petrovich.SetNominative(firstName: name);

                var knownName = new KnownName()
                {
                    Accusative    = _petrovich.InflectFirstNameTo(Case.Accusative),
                    Dative        = _petrovich.InflectFirstNameTo(Case.Dative),
                    Genitive      = _petrovich.InflectFirstNameTo(Case.Genitive),
                    Instrumental  = _petrovich.InflectFirstNameTo(Case.Instrumental),
                    Nominative    = _petrovich.InflectFirstNameTo(Case.Nominative),
                    Prepositional = _petrovich.InflectFirstNameTo(Case.Prepositional),
                    IsMale        = isMale
                };

                return(knownName);
            }
示例#3
0
        public static void MergeKnownNameWithKnownPerson(KnownPerson person)
        {
            if (Context.Default.KnownNames.Any(n => n.Nominative == person.NominativeName))
            {
                return;
            }

            var knownName = new KnownName()
            {
                Nominative    = person.NominativeName,
                Accusative    = person.AccusativeName,
                Dative        = person.DativeName,
                Genitive      = person.GenitiveName,
                Instrumental  = person.InstrumentalName,
                Prepositional = person.PrepositionalName,
                IsMale        = true
            };

            Context.Default.KnownNames.Add(knownName);
        }
示例#4
0
        public static KnownName CreateKnownName(string name, bool isMale)
        {
            var petrovich = new MyOwnPetrovich();

            petrovich.SetGender(isMale ? Gender.Male : Gender.Female);

            petrovich.SetNominative(firstName: name);

            var knownName = new KnownName()
            {
                Accusative    = petrovich.InflectFirstNameTo(Case.Accusative),
                Dative        = petrovich.InflectFirstNameTo(Case.Dative),
                Genitive      = petrovich.InflectFirstNameTo(Case.Genitive),
                Instrumental  = petrovich.InflectFirstNameTo(Case.Instrumental),
                Nominative    = petrovich.InflectFirstNameTo(Case.Nominative),
                Prepositional = petrovich.InflectFirstNameTo(Case.Prepositional),
                IsMale        = isMale
            };

            Context.Default.KnownNames.Add(knownName);
            Context.Default.SaveChanges();

            return(knownName);
        }