不是问题的答案,但我今天在这里遇到了同样的问题,试图通过扩展 HttpContent 来添加上传进度支持,使用带有核心 PCL 项目的 Xamarin 和 Xamarin Android(还有一个使用核心的 iOS 项目)。我在这篇文章中添加了一些额外的细节,而不是创建一个重复的 SO 帖子。
当我尝试从 HttpContent 扩展的 StackOverflow 上的任何建议解决方案(包括原始海报链接到的解决方案)时,我遇到了一个例外:
System.TypeLoadException: Type Test.Project.FileService+CustomStream has invalid vtable method slot 6 with method none
我猜这与他们看到的问题相同。我没有在 PCL/Android 项目中包含 Microsoft.Net.Http,但我们正在使用 System.Net 等。
当我尝试从 StreamContent 派生时,虽然没有崩溃,但断点只针对构造函数和 TryComputeLength,而不是 SerializeToStreamAsync,尽管数据已成功上传到服务器而没有被命中。
这也是我正在针对 Android 4.4 开发的旧版应用程序。虽然过去我已经设法让这种东西在特定平台(Xamarin.Android)上工作,但这对这个应用程序来说将是一个更大的变化,所以理想情况下希望能够在 PCL 中让它工作