C sharp MVC Classes e SubClasse

C#

28/01/2017

Boa noite pessoal, tenho uma dúvida, trabalhei 5 anos com ASP .NET com C# Web Forms, a pouco tempo estou trabalhando com o MVC, e possuo uma tela onde tenho 30 chácaras com imagens na tela, que ao selecionar eu posso reservar ou locar a chácara. Tenho uma classe Chacara(IdChacara, Descricao, Tamanho), ChacaraLocacao (IdLocacao, IdChacara, DataLocacao, IdCliente, ValorLocacao, Status) e ChacaraReserva (IdChacara, DataReserva). O programador anterior que fez essa tela, criou uma Model ChacaraLocacao, até ai tudo bem, mas dentro dessa classe ele fez a referência da ChacaraReserva, onde ao meu ver não teria essa ligação, acredito que ele fez isso para facilitar no retorno do objeto. Eu já pensei de outra forma, criar uma DTO para retornar minha chácara e a situação dela, se está locada ou reservada, mas não sei se a minha solução seria a mais correta também. Agradeço desde já a ajuda.
Natália

Natália

Curtidas 0

Respostas

Joel Rodrigues

Joel Rodrigues

28/01/2017

Olá, Natalia. Tudo bem?

DTOs normalmente são usados para trafegar dados entre camadas/aplicações. No seu caso, me parece ser um possível cenário para aplicação de ViewModels, que podem representar aquilo que temos na tela, mesmo envolvendo vários models e campos adicionais. Lhe sugiro pesquisar sobre ViewModels no ASP.NET MVC para analisar se lhe atende.

Cuidado para não confundir com os ViewModels do padrão MVVM. =)

Abraço.
GOSTEI 0
Rachel Andrade

Rachel Andrade

28/01/2017

Já usei o ViewModel no ASP.NET MVC e acho que é esse seu caso, Natália.

Imagine, por exemplo, que vc tenha a Locação e ela possui um Cliente e uma Chacara. De repente, você pode cadastrar o cliente no momento da locação, não precisa de um cadastro prévio. Então você poderia ter um ViewModel que contivesse uma Locação e um Cliente referente a ela. Assim você poderia exibir os dois na view diretamente usando Razor por meio do objeto Model.
GOSTEI 0
POSTAR