title: Alternatives to nested interfaces (not possible in C#)
body: <p>I'm using interfaces in this case mostly as a handle to an immutable instance of an object. The problem is that nested interfaces in C# are not allowed. Here is the code:</p>
  
  <pre><code>public interface ICountry
  {
      ICountryInfo Info { get; }
  
      // Nested interface results in error message:
      // Error    13  'ICountryInfo': interfaces cannot declare types
      public interface ICountryInfo
      {
          int Population { get; }
          string Note { get; }
      }
  }
  
  
  public class Country : ICountry
  {
      CountryInfo Info { get; set; }
  
      public class CountryInfo : ICountry.ICountryInfo
      {
          int Population { get; set; }
          string Note { get; set; }
          .....
      }
      .....
  }
  </code></pre>
  
  <p>I'm looking for an alternative, anybody would have a solution?</p>