title: Can not send System.TimeSpan to my WebService
body: <p>In my WebService I use TimeSpan to save record in my database, but when instantiate the object in the application that uses the WebService I receive the following message:</p>
  
  <pre><code>Cannot convert source type 'System.TimeSpan' to target type 'MyWebservice.TimeSpan'.
  </code></pre>
  
  <p>That's how the TimeSpan is called in my WebService:</p>
  
  <pre><code>public System.TimeSpan? WaitingTime {get; set;}
  </code></pre>
  
  <p>That's how the WebService reference is updated in my application:</p>
  
  <pre><code>private TimeSpan waitingTimeField;
  
  [System.Xml.Serialization.XmlElementAttribute(IsNullable=true, Order=12)]
  public TimeSpan WaitingTime {
      get {
         return this.waitingTimeField;
      }
      set {
          this.waitingTimeField = value;
          this.RaisePropertyChanged("WaitingTime");
      }
  }
  </code></pre>
  
  <p>If I change the references of the WebService, there is a conflict between the reference and the webservice making it impossible to use it.</p>
  
  <p>I've tried to create an object of type MyWebService.TimeSpan and this made it possible to create the WaitingTime object, but can not send parameters for the object, so the MyWebService.TimeSpan is always 00:00:00</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>I tried to change the WebService reference to:</p>
  
  <pre><code>private System.Nullable&lt;System.TimeSpan&gt; waitingTimeField;
  [System.Xml.Serialization.XmlElementAttribute(IsNullable=true, Order=12)]
  public System.Nullable&lt;System.TimeSpan&gt; WaitingTime
  {
      get {
          return this.waitingTimeField;
      }
      set {
          this.waitingTimeField = value;
          this.RaisePropertyChanged("WaitingTime");
      }
  }
  </code></pre>
  
  <p>So the problems in the application over, but when I send to the WebService a filled TimeSpan, the WebService "resets" it, so what was 00:03:02:1321465 becomes 00:00:00</p>
  
  <pre><code>/// &lt;remarks/&gt;
  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34281")]
  [System.SerializableAttribute()]
  [System.Diagnostics.DebuggerStepThroughAttribute()]
  [System.ComponentModel.DesignerCategoryAttribute("code")]
  [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://tempuri.org/")]
  public partial class TimeSpan : object, System.ComponentModel.INotifyPropertyChanged {
  
      public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
  
      protected void RaisePropertyChanged(string propertyName) {
          System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
          if ((propertyChanged != null)) {
              propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
          }
      }
  }
  </code></pre>