0

我有以下场景:用户正在使用移动应用程序,并且可以创建一个存储以下数据的对象:

Name,为字符串 Address,为字符串 Picture,使用手机的摄像头拍摄,本地存储为位图图像。

用户可以选择将这些数据存储在服务器后端,这是一个监听 HTTP 请求的 WCF Web 服务。我知道我可以将对象字符串编码为 JSON 对象并通过无线方式发送到 http 服务,但我不确定如何将图像传输到服务器?您可以将其编码为 XML/JSON 并将其与字符串一起发送吗?

该应用程序目前是用 C# 编写的 windows phone 8 应用程序,但不久的将来会为 iOS 设备编写相同的应用程序。

4

1 回答 1

0

您必须为每个图像添加流转换并将详细信息添加到列表中。

在客户端。

Stream stream = (Stream)openDialog.File.OpenRead();
                    byte[] bytes = new byte[stream.Length];
                    stream.Read(bytes, 0, (int)stream.Length);
                    BitmapImage bmi = new BitmapImage();
                    using (MemoryStream ms = new MemoryStream(bytes))
                    {
                        bmi.SetSource(ms);
                        newRow.Thumbnail = bmi;
                }

在您的服务方面

string filePath = ConfigurationManager.AppSettings.Get("ImageUploadPath");

                          if (!Directory.Exists(filePath))
                          {
                              Directory.CreateDirectory(filePath);
                          }

                          filePath = filePath + "\\" + picture.FileName + "." + picture.FileType;

                          if (picture.FileName != string.Empty)
                          {
                              fileStream = File.Open(filePath, FileMode.Create);
                              writer = new BinaryWriter(fileStream);
                              writer.Write(picture.FileStream);
                          }
于 2013-06-17T06:02:49.677 回答