Proyecto Demo II #8
Ber79AtPixelario
started this conversation in
Ideas
Replies: 2 comments
|
Con el PR #22 se agrega un proyecto en WebAPI .Net 5 con Entity Framerwork. Y se utiliza la libreria para el control de inputs: [HttpPost]
public ActionResult<Persona> CreatePersona(CreatePersonaDto createPersonaDto)
{
CUIT cuit;
if (!CUIT.TryParse(createPersonaDto.CUIT, out cuit))
return BadRequest("El CUIT ingresado no tiene un formato valido");
if(!cuit.IsValid())
return BadRequest("El CUIT ingresado no es valido");
var persona = _mapper.Map<Persona>(createPersonaDto);
_repository.CreatePersona(persona);
_repository.SaveChanges();
var personaDto = _mapper.Map<PersonaDto>(persona);
return CreatedAtRoute(nameof(GetPersonaById), new { Id=persona.ID }, personaDto);
}En está primera instancia se almacena la entidad que contiene el CUIT InMemmory y el CUIT como un objeto de valor con la siguiente configuración: public class PersonaEntityTypeConfiguration : IEntityTypeConfiguration<Persona>
{
public void Configure(EntityTypeBuilder<Persona> builder)
{
builder.OwnsOne(p => p.CUIT);
}
}Más adelante se avanzará sobre el almacenamiento en SQL |
0 replies
|
Con el PR #25 se configura el proyecto WebAPI con EFCore para SQL El Context de EFCore se configura con el siguiente código: public class PersonaEntityTypeConfigurationVarcharSQL : IEntityTypeConfiguration<Persona>
{
public void Configure(EntityTypeBuilder<Persona> builder)
{
builder.Property(p => p.CUIT)
.HasConversion(
c =>c.ToString(),
c => CUIT.Parse(c));
}
}Se puede crear una migración y actualizar la base de datos. dotnet ef migrations add Initial
dotnet ef database updateConstruirá una columna en la tabla de la entidad para el valor CUIT en string |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
¿Que proyecto podríamos sumar como prueba de uso de la librería?
All reactions