Esempio n. 1
0
        public void ComposingPatternsAppliersPacksUsingInflector()
        {
            // In this example you can see how use the inflector adding some special class name translation.

            var orm = new ObjectRelationalMapper();

            // Creation of inflector adding some special class name translation
            var inflector = new SpanishInflector();

            AddCustomData_Dictionary(inflector);

            IPatternsAppliersHolder patternsAppliers =
                (new SafePropertyAccessorPack())
                .Merge(new OneToOneRelationPack(orm))
                .Merge(new BidirectionalManyToManyRelationPack(orm))
                .Merge(new BidirectionalOneToManyRelationPack(orm))
                .Merge(new DiscriminatorValueAsClassNamePack(orm))
                .Merge(new CoolColumnsNamingPack(orm))
                .Merge(new TablePerClassPack())
                .Merge(new PluralizedTablesPack(orm, inflector))                         // <===
                .Merge(new ListIndexAsPropertyPosColumnNameApplier());

            // Instancing the Mapper using the result of Merge
            var mapper = new Mapper(orm, patternsAppliers);

            orm.TablePerClass <UsuarioWeb>();

            var mapping = mapper.CompileMappingFor(new[] { typeof(UsuarioWeb) });

            Console.Write(mapping.AsString());
        }
        public SpanishInflectorTest()
        {
            SingularToPlural.Add("inglés", "ingleses");
            SingularToPlural.Add("hijo", "hijos");
            SingularToPlural.Add("paz", "paces");
            SingularToPlural.Add("crisis", "crisis");
            SingularToPlural.Add("praxis", "praxis");
            SingularToPlural.Add("apendicitis", "apendicitis");
            SingularToPlural.Add("llave", "llaves");
            SingularToPlural.Add("auto", "autos");
            SingularToPlural.Add("ordén", "ordenes");
            SingularToPlural.Add("item", "items");
            SingularToPlural.Add("linea", "lineas");
            SingularToPlural.Add("proveedor", "proveedores");
            SingularToPlural.Add("Terminal", "Terminales");
            SingularToPlural.Add("ParteFichaTecnica", "ParteFichaTecnicas");
            SingularToPlural.Add("pago", "pagos");
            SingularToPlural.Add("Ubicación", "Ubicaciones");
            SingularToPlural.Add("Origén", "Origenes");
            SingularToPlural.Add("ciudad", "ciudades");
            SingularToPlural.Add("documento", "documentos");
            SingularToPlural.Add("Historial", "Historiales");
            SingularToPlural.Add("Promoción", "Promociones");

            SingularToPlural.Add("Ordén", "Ordenes");
            SingularToPlural.Add("Cliente", "Clientes");
            SingularToPlural.Add("Proveedor", "Proveedores");
            SingularToPlural.Add("Factura", "Facturas");

            SingularToPlural.Add("Tarifa", "Tarifas");
            SingularToPlural.Add("Telefono", "Telefonos");
            SingularToPlural.Add("TelefonoTipo", "TelefonoTipos");
            SingularToPlural.Add("Territorio", "Territorios");
            SingularToPlural.Add("Titulo", "Titulos");
            SingularToPlural.Add("Tratamiento", "Tratamientos");
            SingularToPlural.Add("Usuario", "Usuarios");
            SingularToPlural.Add("Rol", "Roles");
            SingularToPlural.Add("Item", "Items");

            TestInflector = new SpanishInflector();
        }
Esempio n. 3
0
 private void AddCustomData_Dictionary(SpanishInflector inflector)
 {
     // comment the follow line to see the different table name
     inflector.AddIrregular("UsuarioWeb", "UsuariosWeb");
 }
Esempio n. 4
0
 static Inflector()
 {
     English = new EnglishInflector();
     Spanish = new SpanishInflector();
 }
Esempio n. 5
0
        public void Apply(IClassInstance instance)
        {
            var inflector = new SpanishInflector();

            instance.Table(inflector.Pluralize(instance.EntityType.Name));
        }
        public void PluralizeUnaccentWords()
        {
            var inflector = new SpanishInflector();

            inflector.Pluralize("Orden").Should().Be("Ordenes");
        }