High box input in Asp.net

Asked

Viewed 168 times

0

I am creating an application in MVC with DDD and on my registration screens, I would like the fields string as NomeCompleto, Endereço, Cidade, etc, were saved on displayed in inputs in high box.

I don’t know where to treat it because I have the classes of my domínio, I have the classes of my ViewModel and have the inputs of my View and tried to treat a field using text-uppercase, but when mine Controller passes to the ViewModel, data is in lower case.

<input asp-for="PessoaFisicaViewModel.NomeCompleto" class="form-control text-uppercase" />

In short:

How do I address this issue on the server and client side? I suppose I would have to address this in my classes of Domínio, ViewModel and inputs of my View correct?

 public void Register(PessoaViewModel pessoaViewModel)
        {            
            var registerCommand = _mapper.Map<RegisterNewPessoaCommand>(pessoaViewModel);
            Bus.SendCommand(registerCommand);
        }

 public void Handle(RegisterNewPessoaCommand message)
        {
            if (!message.IsValid())
            {
                NotifyValidationErrors(message);
                return;
            }

            //Gerar inteiro aleatoriamente (Jalber)
            Random random = new Random();
            int id = random.Next(100, 3000);
            var pessoa = new Pessoa(id, message.PessoaNatureza);

            //Verificar o tipo de Pessoa (Física/Jurídica) antes de inserir no banco
            if (message.PessoaNatureza == ValueObjects.PessoaNatureza.Fisica)
            {
                var pessoaFisicaMessage = new RegisterNewPessoaFisicaCommand(message.PessoaFisica);

                if (!pessoaFisicaMessage.IsValid())
                {
                    NotifyValidationErrors(pessoaFisicaMessage);
                    return;
                }

                var pessoaFisica = new PessoaFisica(
                                                        pessoa.Id,
                                                        pessoaFisicaMessage.NomeCompleto,
                                                        pessoaFisicaMessage.Apelido,
                                                        pessoaFisicaMessage.DataNascimento,
                                                        pessoaFisicaMessage.Sexo,
                                                        pessoaFisicaMessage.EstadoCivil
                                                    );
                _pessoaFisicaRepository.Add(pessoaFisica);
            }
            else
            {
                var pessoaJuridicaMessage = new RegisterNewPessoaJuridicaCommand(message.PessoaJuridica);

                if (!pessoaJuridicaMessage.IsValid())
                {
                    NotifyValidationErrors(pessoaJuridicaMessage);
                    return;
                }

                var pessoaJuridica = new PessoaJuridica(
                                                            pessoa.Id,
                                                            pessoaJuridicaMessage.RazaoSocial,
                                                            pessoaJuridicaMessage.NomeFantasia,
                                                            pessoaJuridicaMessage.DataAbertura
                                                        );
                _pessoaJuridicaRepository.Add(pessoaJuridica);
            }

            _pessoaRepository.Add(pessoa);

            if (Commit()) //Se salvo, gravar o evento
            {
                //Passar uma pessoa (Física/Jurídica) para que a classe de evento carregue os campos necessários para o log
                var pessoaEvent = new Pessoa(pessoa.Id, pessoa.PessoaNatureza, message.PessoaFisica, message.PessoaJuridica);
                Bus.RaiseEvent(new PessoaRegisteredEvent(pessoa));                
            }
        }

public class PessoaFisica : Entity
    {
        public string NomeCompleto { get; private set; }
        public string Apelido { get; private set; }
        public DateTime? DataNascimento { get; private set; }

        public virtual Pessoa Pessoa { get; private set; }
        public virtual Sexo Sexo { get; private set; }
        public virtual EstadoCivil EstadoCivil { get; private set; }

        public PessoaFisica() { }

        public PessoaFisica(PessoaFisica pessoaFisica)
        {
            NomeCompleto = pessoaFisica.NomeCompleto;
            Apelido = pessoaFisica.Apelido;
            DataNascimento = pessoaFisica.DataNascimento;
            Sexo = pessoaFisica.Sexo;
            EstadoCivil = pessoaFisica.EstadoCivil;
        }

        public PessoaFisica(string nomeCompleto, string apelido, DateTime? dataNascimento, Sexo sexo, EstadoCivil estadoCivil)
        {            
            NomeCompleto = (!string.IsNullOrEmpty(nomeCompleto) ? nomeCompleto.ToUpper() : nomeCompleto);
            Apelido = (!string.IsNullOrEmpty(apelido) ? apelido.ToUpper() : apelido);
            DataNascimento = dataNascimento;
            Sexo = sexo;
            EstadoCivil = estadoCivil;
        }

        public PessoaFisica(int id, string nomeCompleto, string apelido, DateTime? dataNascimento, Sexo sexo, EstadoCivil estadoCivil)
        {
            Id = id;
            NomeCompleto = (!string.IsNullOrEmpty(nomeCompleto) ? nomeCompleto.ToUpper() : nomeCompleto);
            Apelido = (!string.IsNullOrEmpty(apelido) ? apelido.ToUpper() : apelido);
            DataNascimento = dataNascimento;
            Sexo = sexo;
            EstadoCivil = estadoCivil;
        }


        public PessoaFisica(int id, Pessoa pessoa, string nomeCompleto, string apelido, DateTime? dataNascimento, Sexo sexo, EstadoCivil estadoCivil)
        {
            Id = id;
            Pessoa = pessoa;
            NomeCompleto = (!string.IsNullOrEmpty(nomeCompleto) ? nomeCompleto.ToUpper() : nomeCompleto);
            Apelido = (!string.IsNullOrEmpty(apelido)? apelido.ToUpper() : apelido);
            DataNascimento = dataNascimento;
            Sexo = sexo;
            EstadoCivil = estadoCivil;
        }

        public PessoaFisica(Pessoa pessoa, string nomeCompleto, string apelido, DateTime? dataNascimento, Sexo sexo, EstadoCivil estadoCivil)
        {
            Pessoa = pessoa;
            NomeCompleto = (!string.IsNullOrEmpty(nomeCompleto) ? nomeCompleto.ToUpper() : nomeCompleto);
            Apelido = (!string.IsNullOrEmpty(apelido) ? apelido.ToUpper() : apelido);
            DataNascimento = dataNascimento;
            Sexo = sexo;
            EstadoCivil = estadoCivil;
        }
      
    }

  • this class CSS only changes the look, but what you really need is to write in capital letters, as the context behind is larger and we do not know how you record in the database becomes complicated, you could put an example of updating your database, that’s when I would make the recording loud.

  • The process is done with several classes. I used a model of Eduardo Pires... As an example, I have a Person class in my Domain and another Registernewpessoacommand class that looks like a viewmodel, only I use it to receive data from Viewmodel and load my domain classes only to write to the repository... I’ll try to post a brief summary of the code...

  • I thought I’d treat it in the small classes of my domain...

1 answer

1


One option would be to do for the domain

Example:

public class PessoaFisica
{
    private string _nomeCompleto;
    private string _apelido;
    public string NomeCompleto { get => _nomeCompleto; set => _nomeCompleto = value.ToUpper(); }
    public string Apelido { get => _apelido; set => _apelido = value.ToUpper(); }
}

This way, regardless of the user save in minuscule, will always be high box and how you will be saved in high box in the bank, the return will also be like.

  • Why not auto-initialize properties with { get; set; } ?

  • 1

    Because I modified the set to always return the texts in high box

  • Thank you @Barbetta!

Browser other questions tagged

You are not signed in. Login or sign up in order to post.