<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      winform 通過webservice向服務(wù)器提交圖片需要注意的地方

      最近一個winform項目中需要通過拍照或者上傳本地文件或者截圖的方式把產(chǎn)品圖片上傳到服務(wù)器,最后選擇了服務(wù)器部署webservice的方式來進(jìn)行。其中遇到了一些問題記錄下來。

      不多說,直接上服務(wù)端代碼

       [WebMethod(Description = "上傳文件")]
      
          public bool UploadFiles(string filename, byte[] content)
          {
              try
              {
                  int index = filename.LastIndexOf(".");
                  if (index == 0)
                  {
                      return false;
                  }
                  else
                  {
                      string extended = string.Empty;
                      if (index + 1 == filename.Length)
                      {
                          return false;
                      }
                      else
                      {
                          extended = filename.Substring(index + 1);
                          if (extended == "jpeg" || extended == "gif" || extended == "jpg" || extended == "png")
                          {
                              try
                              {
                                  string Path = System.Web.HttpContext.Current.Server.MapPath("~/ProductImages/");
                                  if (!Directory.Exists(Path)) 
                                  {
                                       Directory.CreateDirectory(Path);
                                  }
                               
                                  MemoryStream mymemorystream = new MemoryStream(content, 0, content.Length);
                            
                                  File.WriteAllBytes((Path + filename), content);
                                  return true;
                              }
                              catch (Exception ex)
                              {
                                  return false;
                              }
                          }
                          else
                          {
                              return false;
                          }
                      }
                  }
              }
              catch
              {
                  return false;
              }
          }
      

        這其實是一種比較通用的方式,不僅可以用來接收圖片文件,也可以是其他文件。當(dāng)然你也可以做一些文件大小的限制,自己添加一個判斷就行。沒啥好說的,問題也沒有出現(xiàn)。

      接下來說說winform這邊,下圖是圖片上傳部分

      至于如何通過拍照和加載圖片或者截圖上傳到picturebox上大家自己去找吧,網(wǎng)上一大堆。

      接下來就是把picture的圖片上傳到服務(wù)器了,首先是添加服務(wù)引用,這也很簡單就不說了,注意如果一個解決方案中有很多項目,而這個圖片上傳所在的項目不是主項目,那么需要在主項目的app.config文件中添加一個節(jié)點,否則會報找不到什么節(jié)點的錯誤。

      <system.serviceModel>
      <bindings>
      <basicHttpBinding>
      <binding name="WebServiceSoap" />
      </basicHttpBinding>
      </bindings>
      <client>
      <endpoint address="http://localhost/WebService.asmx" binding="basicHttpBinding"
      bindingConfiguration="WebServiceSoap" contract="WebService.WebServiceSoap"
      name="WebServiceSoap" />
      </client>
      </system.serviceModel>
      

        接下來就是上傳部分了

        if (image != null&isnewimage)
                  {
                      MemoryStream ms = new MemoryStream();
                      image.Save(ms, ImageFormat.Png);
                      byte[] bytes = new byte[ms.Length];
                      bytes = ms.GetBuffer();        
                      WebService.WebServiceSoapClient webservice = new WebService.WebServiceSoapClient();
                      string filename = cInvCode + ".png";
                      if (webservice.UploadFiles(filename, bytes))
                      {
                         
                      }
                      else
                      {
                          issaveok = false;
                          failreason = "圖片上傳失敗!";
                          
                          return;
                      }             
                  }
      

        這里首先獲取圖片資源放到一個image對象中,然后轉(zhuǎn)換為字節(jié)數(shù)組通過webservice上傳,這里我讓圖片全部以png格式上傳,當(dāng)然你可以以其他格式上傳。

      剛開始在向字節(jié)數(shù)組賦值的時候我用的不是bytes = ms.GetBuffer();而是用的ms.Write(bytes, 0, (int)ms.Length);結(jié)果文件是可以上傳到服務(wù)器,但是服務(wù)器端的圖片文件始終打不開,說可能文件已經(jīng)損壞,查了半天查不出來原因,最后發(fā)現(xiàn)其實還有bytes = ms.GetBuffer();這種方法,一試,問題果然解決,服務(wù)器端的圖片成為可以預(yù)覽查看的正常圖片了。

      好了,這是第一次寫博客,寫的不好,還請吐槽啊。

      posted @ 2013-09-05 09:46  鄭某  閱讀(2185)  評論(4)    收藏  舉報
      主站蜘蛛池模板: 成人国产一区二区三区精品| 国产性三级高清在线观看| 性人久久久久| 九九在线精品国产| 女同AV在线播放| 国产精品国三级国产av| 日韩毛片在线视频x| xxxx丰满少妇高潮| 成人无码一区二区三区网站| 亚洲精品一区二区天堂| 国产情侣一区二区三区| 一区二区亚洲人妻精品| 波多野结衣免费一区视频| 亚洲深深色噜噜狠狠网站| 自拍偷自拍亚洲精品播放| 亚洲AV永久无码嘿嘿嘿嘿| 国产精品99久久免费| 色综合色综合综合综合综合| 久久精品国产亚洲AV瑜伽| 本溪| 波多野结衣av无码| 91精品国产一二三产区| 思思99热精品在线| 欧美日韩国产图片区一区| 粉嫩蜜臀av一区二区三区| 最新的国产成人精品2022| 亚洲国产精品综合久久网络| 国产av黄色一区二区三区| 欧美videosdesexo吹潮| 五月天中文字幕mv在线| 日韩女同一区二区三区久久| 91亚洲国产三上悠亚在线播放| 日本污视频在线观看| 欧洲国产成人久久精品综合| 国产精品毛片一区视频播| 国产成人精品无人区一区| av天堂亚洲天堂亚洲天堂| 99RE6在线观看国产精品| 色综合AV综合无码综合网站| 国产一区二区三区色成人| 亚洲精品久久久久久下一站|