:: Repositorio para VO

Bom dia pessoal.

Eu estou com uma dúvida sobre como carregar VOs para atender a uma necessidade da tela. Imaginem q na minha tela de edição de usuário ou de relatório eu preciso listar os status.

Como eu atendo este requisito?

Eu tenho uma classe base(DAO) que todos os repositorios precisam herdar para ter acesso ao banco e está classe não é tipada para q eu possa usar ela em qq projeto e por qq repositorio, sabendo disso eu poderia ter algo como:

public class StatusServiceDAO : RepositoryBase, IStatusServiceDAO
{
public IList Listar()
{
//aqui chamos os métodos da minha super class para obter os dados
}
}

Oq vcs acham disso? Como vcs resolvem este problema? Esta nomenclatura é correta?

Se seu repositório estende seu DAO então ele É um DAO. Acho que a idéia não é bem essa. Seus repositórios poderiam ter atributos do tipo DAO conforme a necessidade e seus VOs acesscam estes repositórios.

Então eu tendo meus repositorios assim:
public class LinksRepository : ILinksRepository
{
private readonly IDataAccessBase _context;

    public LinksRepository(IDataAccessBase dataContext)
    {
        _context = dataContext;
    }
}

e para acessar eu crio algo como:

public class StatusDataAccess
{
private readonly IDataAccessBase _context;

    public StatusDataAccess(IDataAccessBase dataContext)
    {
        _context = dataContext;
    }

}

Está abordagem é correta? Comos vcs lidam com está situação?

Sendo que _context é o objeto responsável por acessar o banco para obter os dados.

[quote=diego.dfsd]… Esta nomenclatura é correta?
[/quote]Bem, a “nomenclatura” vai depender 1 pouco da abordagem q vc estiver usando.

[quote=diego.dfsd]… Eu estou com uma dúvida sobre como carregar VOs para atender a uma necessidade da tela. Imaginem q na minha tela de edição de usuário ou de relatório eu preciso listar os status.
Como eu atendo este requisito?..[/quote]Muito bem, se vc usou o termo ‘Repository’ subentende-se q vc (quer) está usando DDD. Mas, o q a grande maioria não sabe é q o Padrão ‘Value Object’ já tinha sido catalogado por Martin Fowler e Eric Evans antes de a Sun erroneamente/erradamente colocar o termo ‘VO’ em seu catálogo J2EE Core-patterns (leia-se EJB Core-patterns; a Sun de 1s tempos p/ ká vem corrigingo os Sites de seu catálogo substituindo o termo VO por ‘TO’ ou ‘DO’, se não me engano).
Quando vc menciona “VOs”, vc está se referindo a suas Classes Entidade (de Negócio)??!
Aliás, poderia ser mais claro para explicar qual é realmente a sua dúvida (e se realmente vc quer adotar DDD)??! :?: