Exemplo n.º 1
0
        public void ShouldOnlyConvertWhatItWasAsked(NamingConverterFlags flags)
        {
            _modelBuilder.ConvertNaming(x => x.ToLower(), flags);
            var dict = new Dictionary <NamingConverterFlags, List <string> >
            {
                { NamingConverterFlags.Schemas, this.GetSchemas() },
                { NamingConverterFlags.Tables, this.GetTables() },
                { NamingConverterFlags.Keys, this.GetKeys() },
                { NamingConverterFlags.ForeignKeys, this.GetForeignKeys() },
                { NamingConverterFlags.Indexes, this.GetIndexes() },
                { NamingConverterFlags.Columns, this.GetColumns() }
            };

            foreach (var item in dict)
            {
                item.Value.Should().NotBeEmpty();

                if (flags.HasFlag(item.Key))
                {
                    item.Value.Should().OnlyContain(x => !x.Any(char.IsUpper));
                }
                else
                {
                    item.Value.Should().OnlyContain(x => x.Any(char.IsUpper));
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>Преобразование имён объектов</summary>
        /// <param name="modelBuilder">
        /// <see cref="ModelBuilder" />
        /// </param>
        /// <param name="renameFunc">Функция преобразования</param>
        /// <param name="namingConverterFlags">
        /// <see cref="NamingConverterFlags" />
        /// </param>
        public static void ConvertNaming(
            this ModelBuilder modelBuilder,
            Func <string, string> renameFunc,
            NamingConverterFlags namingConverterFlags = NamingConverterFlags.All)
        {
            var renamer = new MutableEntityTypeRenamer(renameFunc, namingConverterFlags);

            foreach (var entity in modelBuilder.Model.GetEntityTypes())
            {
                renamer.Rename(entity);
            }
        }
Exemplo n.º 3
0
 /// <inheritdoc cref="MutableEntityTypeRenamer" />
 /// <param name="renameFunc">Функция преобразования</param>
 /// <param name="namingConverterFlags">
 /// <see cref="NamingConverterFlags" />
 /// </param>
 public MutableEntityTypeRenamer(
     Func <string, string> renameFunc,
     NamingConverterFlags namingConverterFlags = NamingConverterFlags.All)
 {
     _renameFunc = renameFunc;
     _renames    = new Dictionary <NamingConverterFlags, Action <IMutableEntityType> >
     {
         { NamingConverterFlags.Schemas, this.RenameSchema },
         { NamingConverterFlags.Tables, this.RenameTable },
         { NamingConverterFlags.Keys, this.RenameKeys },
         { NamingConverterFlags.ForeignKeys, this.RenameForeignKeys },
         { NamingConverterFlags.Indexes, this.RenameIndexes },
         { NamingConverterFlags.Columns, this.RenameColumns }
     }
     .Where(x => namingConverterFlags.HasFlag(x.Key))
     .Select(x => x.Value)
     .ToList();
 }