title: Castle Windsor passing constructor parameters
body: <p>I have an IAddress class with a few properties.  I then have a concrete type that implements this interface.  This concrete type has a couple of different constructors I could use.  How can I pass parameter values to one of these constructors at run-time?  I cannot use the config file as I will be reusing this concrete type multiple times and each time the parameter values will be different.</p>
  
  <pre class="lang-cs prettyprint-override"><code>IWindsorContainer container = new WindsorContainer(new XmlInterpreter());
  IAddress address = container.Resolve&lt;IAddress&gt;();
  
  
  public interface IAddress
  {
      string Address1 { get; set; }
      string Address2 { get; set; }
      string City { get; set; }
      string State { get; set; }
      string ZipCode { get; set; }
  }
  
  
  class TestAddress : IAddress
  {
  
      private string _address1;
      private string _address2;
      private string _city;
      private string _countyName;
      private string _state;
      private string _zipCode;
  
      public string Address1
      {
          get { return _address1; }
          set { _address1 = value; }
      }
  
      public string Address2
      {
          get { return _address2; }
          set { _address2 = value; }
      }
  
      public string City
      {
          get { return _city; }
          set { _city = value; }
      }
  
      public string State
      {
          get { return _state; }
          set { _state = value; }
      }
  
      public string ZipCode
      {
          get { return _zipCode; }
          set { _zipCode = value; }
      }
  
      public string CountyName
      {
          get { return _countyName; }
          set { _countyName = value; }
      }
  
  
      public MelissaAddress(string address1, string address2, string city, string state, string zipcode)
      {
          Address1 = address1;
          Address2 = address2;
          City = city;
          State = state;
          ZipCode = zipcode;
      }
  
      public MelissaAddress(string address1, string address2, string zipcode) : this(address1, address2, null, null, zipcode)
      { }
  
      public MelissaAddress(string address1, string address2, string city, string state) : this(address1, address2, city, state, null)
      { }
  }
  </code></pre>