webservice 上传图片

本文介绍了一个使用 C# 实现的 Web 服务文件上传功能,并提供了客户端调用该服务的具体代码示例。该示例展示了如何将文件转换为字节数组并通过 Web 服务接口上传。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

ContractedBlock.gifExpandedBlockStart.gifCode
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.IO;

namespace WebApplication1
{
    
/// <summary>
    
/// UpFile 的摘要说明
    
/// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo 
= WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(
false)]
    
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
    
// [System.Web.Script.Services.ScriptService]
    public class UpFile : System.Web.Services.WebService
    {

        [WebMethod]
        
public string UploadFile(byte[] fs, string FileName)
        {
            
try
            {
                
///定义并实例化一个内存流,以存放提交上来的字节数组。
                MemoryStream m = new MemoryStream(fs);
                
///定义实际文件对象,保存上载的文件。
                FileStream f = new FileStream(Server.MapPath("."+ "\\"
                 
+ FileName, FileMode.Create);
                
///把内内存里的数据写入物理文件
                m.WriteTo(f);
                m.Close();
                f.Close();
                f 
= null;
                m 
= null;
                
return "文件已经上传成功。";
            }
            
catch (Exception ex)
            {
                
return ex.Message;
            }
        }

    }
}

 

 

CS 应用程序调用

ContractedBlock.gifExpandedBlockStart.gifCode
   private void button1_Click(object sender, EventArgs e)
        {
            UpFile.UpFile uf 
= new WindowsFormsApplication1.UpFile.UpFile();
            FileInfo fi 
= new FileInfo(@"F:\大头\IMG_0220.JPG");
            
byte[] b=new byte[fi.Length];
            System.IO.FileStream fs
=fi.OpenRead();
            fs.Read(b,
0,Convert.ToInt32(fi.Length));
            
for (int i = 0; i < 10; i++)
            {
                uf.UploadFile(b, 
"abc" + System.Guid.NewGuid() + ".jpg");
            }
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值