Beispiel #1
0
        public void EnglishPluralizationServiceTest()
        {
            IncrementTestCount();
            var service = new EnglishPluralizationService();
            var pears   = service.Pluralize("pear");
            var pear    = service.Singularize("pears");

            service.Pluralize("apple");
            service.Singularize("apples");
            service.Pluralize("monkey");
            service.Singularize("monkies");

            Assert.AreEqual("pear", pear);
            Assert.AreEqual("pears", pears);
        }
        public string Pluralize(string word)
        {
            if (word.EndsWith("Status"))
            {
                return(word + "es");
            }

            return(_service.Pluralize(word));
        }
        public void Pluralize_userdictionary_override_default_rules()
        {
            var entries = new[]
            {
                new CustomPluralizationEntry(singular: "X", plural: "Z")
            };
            var pluralizationService = new EnglishPluralizationService(entries);

            Assert.Equal("Z", pluralizationService.Pluralize("X"));
        }
        private string GetSlashedNamePluralized(string originalFieldDefinitionLabel)
        {
            Check.Ensure(originalFieldDefinitionLabel.Contains("/"));

            var    allSlashedSections = originalFieldDefinitionLabel.Split('/');
            string finalString        = string.Empty;

            foreach (var slashedSection in allSlashedSections)
            {
                string currentSlashedSectionPluralized = PluralizationService.Pluralize(slashedSection);
                if (finalString == String.Empty)
                {
                    finalString += currentSlashedSectionPluralized;
                }
                else
                {
                    finalString += "/" + currentSlashedSectionPluralized;
                }
            }
            return(finalString);
        }
Beispiel #5
0
        public static string Pluralize(this string source)
        {
            if (string.IsNullOrWhiteSpace(source))
            {
                return(string.Empty);
            }
            source = source.TitleCase();
            var    ps      = new EnglishPluralizationService();
            var    match   = new Regex(@"([A-Z]+[^A-Z]*)$").Match(source);
            string ending  = match.Groups.Count > 0 ? match.Groups[0].Value : source;
            string pEnding = ps.Pluralize(ending);

            return(source.Substring(0, source.Length - ending.Length) + pEnding);
        }
Beispiel #6
0
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            const string SingularEntityText = "Entity";

            EnglishPluralizationService pluralizer = new EnglishPluralizationService();

            modelBuilder.Types().Where(type => type.Name.EndsWith(SingularEntityText)).Configure(c =>
            {
                string clrTypeName = c.ClrType.Name;
                string entityName  = clrTypeName.Substring(0, clrTypeName.Length - SingularEntityText.Length);
                c.ToTable(pluralizer.Pluralize(entityName));
            });

            base.OnModelCreating(modelBuilder);
        }
        internal static void RemoveSuffixFromTheTableNames(this DbModelBuilder modelBuilder, string suffix)
        {
            if (string.IsNullOrWhiteSpace(suffix))
            {
                return;
            }

            EnglishPluralizationService pluralizer = new EnglishPluralizationService();

            modelBuilder.Types().Where(type => type.Name.EndsWith(suffix)).Configure(c =>
            {
                string clrTypeName = c.ClrType.Name;
                string entityName  = clrTypeName.Substring(0, clrTypeName.Length - suffix.Length);
                c.ToTable(pluralizer.Pluralize(entityName));
            });
        }
Beispiel #8
0
        public static IEnumerable <IFigure> GetRelationship(Stock stock, Type figureType)
        {
            var service        = new EnglishPluralizationService();
            var collectionName = service.Pluralize(figureType.Name);

            var property = typeof(Company).GetProperty(collectionName);

            if (property != null)
            {
                return((IEnumerable <IFigure>)property.GetValue(stock.Company));
            }

            property = typeof(Stock).GetProperty(collectionName);
            if (property != null)
            {
                return((IEnumerable <IFigure>)property.GetValue(stock));
            }

            throw new ArgumentException(string.Format("No relationship (navigation property) found with name {0} on Company or Stock", collectionName));
        }
        /// <summary>
        /// Generic Method to initialize the gridview
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="gridView"></param>
        /// <param name="columnsToHide"></param>
        private void InitializeDataGridView <T>(DataGridView gridView, DataSet dataSet, params string[] columnsToHide) where T : class
        {
            // Set up gridview
            gridView.AllowUserToAddRows    = false;
            gridView.AllowUserToDeleteRows = false;
            gridView.ReadOnly            = true;
            gridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;

            /*            // Set event handler to delete row
             *          gridView.UserDeletingRow += (s, e) => DeletingRow<T>(s as DataGridView, e);*/

            // Binding the data
            gridView.DataSource = Controller <BeautySalonEntities, T> .SetBindingList();

            foreach (string column in columnsToHide)
            {
                gridView.Columns[column].Visible = false;
            }

            string tableName;

            switch (typeof(T).Name)
            {
            case "Inventory":
                tableName = "Inventory";
                break;

            case "AppointmentsView":
                tableName = "AppointmentsView";
                break;

            default:
                EnglishPluralizationService pluralize = new EnglishPluralizationService();
                tableName = pluralize.Pluralize(typeof(T).Name);
                break;
            }

            DataTable table = beautySalonDB.GetDataTable(tableName);

            dataSet.Tables.Add(table);
        }
        public OapTablePrefixConvention()
        {
            string prefix = "Oap_";
            var    myList = new List <string>();

            try
            {
                var plural = new EnglishPluralizationService();

                //TODO: Modify this to use a custom attribute to not apply this default convention.
                Types().Where(t => !t.CustomAttributes.Any(ca => ca.AttributeType == (typeof(NonOapEntity)))).Configure(c =>
                {
                    var tableName = plural.Pluralize($"{prefix}{c.ClrType.Name}s");
                    c.ToTable(tableName);
                    myList.Add(tableName);
                });
            }
            catch (System.Exception)
            {
                throw;
            }
        }
Beispiel #11
0
 public static string GetPerformanceMeasureNamePluralized()
 {
     return(PluralizationService.Pluralize(GetPerformanceMeasureName()));
 }
 public string Pluralize(string name)
 {
     return(pluralizationService.Pluralize(name));
 }
Beispiel #13
0
 protected string Pluralize(string word)
 {
     return(_service.Pluralize(word));
 }
 private string Pluralize <TEntity>()
 {
     return(EnglishPluralizationService.Pluralize(typeof(TEntity).Name));
 }
Beispiel #15
0
 public string GetFieldDefinitionLabelPluralized()
 {
     return(PluralizationService.Pluralize(GetFieldDefinitionLabel()));
 }
Beispiel #16
0
        /// <summary>
        /// Pluralize given word
        /// </summary>
        /// <param name="word"></param>
        /// <returns>Pluralized word</returns>
        private string Pluralize(string word)
        {
            var pluraizationService = new EnglishPluralizationService();

            return(pluraizationService.Pluralize(word));
        }
 public static string GetFieldDefinitionLabelPluralized(this FieldDefinition fieldDefinition)
 {
     return(PluralizationService.Pluralize(fieldDefinition.GetFieldDefinitionLabel()));
 }
Beispiel #18
0
        public static string GetTableName(Type figureType)
        {
            var service = new EnglishPluralizationService();

            return(service.Pluralize(figureType.Name));
        }