0

对于我正在开发的 PCL 应用程序,我正在使用 jamesmontemagno ( Github Repo ) 的 Xamarin Forms 媒体插件。我主要使用该插件通过设备的相机拍摄照片,为此我使用了 TakeVideoAsync 方法(Task<MediaFile> TakeVideoAsync(StoreVideoOptions options);)。它返回一个[MediaFile][2]对象。

我面临的问题是我需要将图像作为电子邮件附件发送。为此,我将实现一个“EmailSender”类,该类将为每个目标平台提供不同的实现(我使用的是 PCL 方法)。现在我正在开发 Windows Phone 8.1 (Silverlight) 实现。我想用Windows.ApplicationModel.Email.EmailManager发送一个Windows.ApplicationModel.Email.EmailMessage. 在这个 Stackoverflow 答案中可以看到一个示例实现(查看“ComposeEmail”方法)。


我需要帮助: 我想找到一种方法来检索图像文件(可能作为 StorageFile 或 RandomAccessStream),以便从中创建一个EmailAttachment对象。从媒体插件中MediaFile的方法返回的我可以得到 a ,但我还没有找到任何方法将它转换为 a与我的 Xamarin Windows Phone 8.1 的 .NET 版本的功能TakeVideoAsyncSystem.IO.StreamRandomAccessStream

所有建议将不胜感激。

4

1 回答 1

0

Windows Phone 8.1 中的 Stream 对象在 System.Runtime.WindowsRuntime 库中有一个 .AsRandomStream() 扩展方法。IRandomStream 在同一个库中有一个 .ToStream() 扩展方法。您还可以使用 IRandomAccessStream randomAccessStream = new InMemoryRandomAccessStream(); 创建一个新的 RandomStream 希望有帮助。

于 2016-07-06T14:16:22.740 回答