如何使用Web服务将图像作为附件发送?

时间:2013-01-27 11:31:18

标签: asp.net wcf web-services sharpziplib

我想将新员工添加到Web服务中。 员工照片应作为Web服务的附件发送。 并作为密码保护的ZIP文件发送。

1 个答案:

答案 0 :(得分: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);
                          }