title: Multipart Content with refit
body: <p>I am using multipart with Refit. I try to upload profile picture for my service
  the code generated from postman is looking like this</p>
  
  <pre><code>var client = new RestClient("http://api.example.com/api/users/1");
  var request = new RestRequest(Method.POST);
  request.AddHeader("Postman-Token", "xxx");
  request.AddHeader("Cache-Control", "no-cache");
  request.AddHeader("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
  request.AddParameter("multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW", "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"_method\"\r\n\r\nput\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"profile_picture\"; filename=\"ic_default_avatar.png\"\r\nContent-Type: image/png\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--", ParameterType.RequestBody);
  IRestResponse response = client.Execute(request);
  </code></pre>
  
  <p>and then I construct Refit method like this</p>
  
  <pre><code>[Multipart]
  [Post("/users/{id}")]
  IObservable&lt;BaseResponse&lt;User&gt;&gt; UpdateProfilePicture(int id,[AliasAs("profile_picture")] byte[] profilePicture,[AliasAs("_method")]string method="put");
  </code></pre>
  
  <p>if I use <code>byte[]</code> or <code>ByteArrayPart</code> it will throw exception </p>
  
  <blockquote>
    <p>{System.Net.Http.HttpRequestException: An error occurred while sending
    the request ---> System.Net.WebException: Error getting response
    stream (chunked Read2): ReceiveFailure ---> System.Exception:   at
    System.Net.WebConnection.HandleError (System.Net.WebExceptionStatus
    st, System.Exception e, System.String where) [0x00031] in
    :0    at
    System.Net.WebConnection.Read (System.Net.HttpWebRequest request,
    System.Byte[] buffer, System.Int32 offset, System.Int32 size)
    [0x000d2] in :0    at
    System.Net.WebConnectionStream.ReadAll () [0x0010e] in
    :0    at
    System.Net.HttpWebResponse.ReadAll () [0x00011] in
    :0    at
    System.Net.HttpWebRequest.CheckFinalStatus (System.Net.WebAsyncResult
    result) [0x001d6] in :0    at
    System.Net.HttpWebRequest.SetResponseData
    (System.Net.WebConnectionData data) [0x0013e] in
    :0    at
    System.Net.WebConnection.ReadDone (System.IAsyncResult result)
    [0x0024d] in :0    at
    System.Net.Sockets.SocketAsyncResult+&lt;>c.b__27_0
    (System.Object state) [0x00000] in
    :0    at
    System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem
    () [0x00015] in :0    at
    System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in
    :0    at
    ObjCRuntime.Runtime.ThreadPoolDispatcher (System.Func`1[TResult]
    callback) [0x00006] in &lt;0b60c1467e7449608ac42f9c7bbfdd05>:0    at
    System.Threading._ThreadPoolWaitCallback.PerformWaitCallback ()
    [0x00009] in :0    at
    System.Net.WebConnection.HandleError (System.Net.WebExceptionStatus
    st, System.Exception e, System.String where) [0x00031] in
    /Library/Frameworks/Xamarin.iOS.framework/Versions/11.12.0.4/src/Xamarin.iOS/mcs/class/System/System.Net/WebConnection.cs:439</p>
  </blockquote>
  
  <p>. and if I use <code>Stream</code> or <code>StreamPart</code> it will also throw exception said stream is closed.</p>