title: Why not use a repository to return partial domain model results
body: <p>I've seen a few articles stating that a repository should only return full domain models for method calls such as GetAll(). But what if all I need is a list where each item is only made up of 2 properties from a domain model that has 30 properties? I would like to display a list departments where the list only shows a department name, and location. From that list a user can select one department and request its details.  From there I can make another repository call to return the full domain model for what was selected and allow the typical crud operations to take place.</p>
  
  <p>However, if I'm not supposed to use a repository to return a subset of the full domain model then what is the suggested approach? I suppose I could just return a list of full domain models but that seems a waste of network bandwidth to bring so much data over the wire I won't use. If I create another model to represent the 2 properties of interest that seems like another bulk load of work to do since each model I have has its own repository and service module for repository access.  </p>
  
  <p>What are the suggested methods to retrieve a subset of a full domain model from a repository? Also, I don't see what would happen if I violate the rule of pulling only full models by also pulling partial model data as well which would only be used for pick lists. </p>