title: A single DTO with multiple constructors - does this seem like an appropriate solution?
body: <p>I have an entity called "Set" which contains Cards.  Sometimes I want to see the entire card and its contents (card view), when sometimes I just want to know how many cards are in the Set (table views).  In my effort to keep things DRY, I decided to try and re-use my SetDto class with multiple constructors like this: </p>
  
  <pre><code>public class SetDto
      {
          public SetDto()
          {
              Cards = new List&lt;CardDto&gt;();
          }
  
          // Called via SetDto(set, "thin")
          public SetDto (Set set, string isThin)
          {
              var setDto = new SetDto()
                  {
                      SetId = set.SetId,
                      Title = set.Title,
                      Details = set.Details,
                      Stage = set.Stage,
                      CardCount = set.Cards.Count
                  };
  
              return setDto;
          }
  
          // Called via SetDto(set)
          public SetDto(Set set)
          {
              SetId = set.SetId;
              UserId = set.UserId;
              Title = set.Title;
              Details = set.Details;
              FolderId = set.FolderId;
              Stage = set.Stage;
              IsArchived = set.IsArchived;
              Cards = new List&lt;CardDto&gt;();
              foreach (Card card in set.Cards)
              {
                  Cards.Add(new CardDto(card));
              }
  
          }
  
          /// property definitions
  </code></pre>
  
  <p>I originally had two different DTOs for sets - ThinSetDto and FullSetDto - but this seemed messy and tougher to test.  Does the above solution seem ok, or am I breaking a known best-practice? Thank you for your time!</p>