c#使用Web服务返回图片数据的方法

23 篇文章 0 订阅








c#使用Web服务返回图片数据的方法

----------------------------------------------------------------------------------------------------------------------
在Webservice服务端 使用内存流对象保存图片的字节流数据, 返回byte[] 
----------------------------------------------------------------------------------------------------------------------
http://hi.baidu.com/jordan51341/item/b0f6c10b85fd57c12f4c6ba3
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

[WebService(Namespace = " http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{
       public Service () {

           //如果使用设计的组件,请取消注释以下行 
           //InitializeComponent(); 
       }

       [WebMethod]
       public byte[] GetPicture()
       {
           System.IO.MemoryStream m=new System.IO.MemoryStream ();
           System.Drawing.Bitmap bp = new System.Drawing.Bitmap(@"d:\1.gif");
           bp.Save(m, System.Drawing.Imaging.ImageFormat.Gif);
           return m.GetBuffer ();
      
       }
}
------------------------------------------------------------------------------------------------------------------------
在客户端将图片的byte[]类型数据转换为bitmap 再显示出来 

首先添加webservice的web引用
使用picturebox显示从web服务返回的图片数据
------------------------------------------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace test
{
       public partial class Form1 : Form
       {
           public Form1()
           {
               InitializeComponent();
           }

           private void button1_Click(object sender, EventArgs e)
           {
               testweb.Service s = new test.testweb.Service();
               byte[] buf = s.GetPicture();
               System.IO.MemoryStream m = new System.IO.MemoryStream(buf);         
               Bitmap b = new Bitmap(m);
               pictureBox1.Image = b;
           }
       }
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 C# Web 应用程序中使用 Bootstrap 的 DataTable 插件查询数据库并显示一个包含图片的列表,需要进行以下步骤: 1. 首先在 HTML 文件中引入相关的 CSS 和 JS 文件,与上面的例子相同,具体方式可以参考 Bootstrap DataTable 官方文档。 2. 在 HTML 中创建一个表格,并为其添加一个 id 属性和 class 属性,以便在 JavaScript 中进行引用和初始化。 ```html <table id="myTable" class="table table-striped table-bordered" style="width:100%"> <thead> <tr> <th>图片</th> <th>名称</th> <th>描述</th> <th>价格</th> </tr> </thead> <tbody> <!-- 这里将在 JavaScript 中动态生成数据 --> </tbody> </table> ``` 3. 在 JavaScript 中进行 DataTable 的初始化,并通过 AJAX 请求从后端获取数据。在获取数据后,使用 JavaScript 动态生成表格中的每一行,并将图片显示在表格中。 ```javascript $(document).ready(function() { $('#myTable').DataTable({ "processing": true, "serverSide": true, "ajax": { "url": "GetDataFromDatabase.aspx", // 后端处理请求的页面 "type": "POST", "dataType": "json" }, "columns": [ { "data": "img_url", // 对应图片的链接 "render": function(data, type, row, meta) { return '<img src="' + data + '" style="width: 100px;">'; } }, { "data": "name" }, { "data": "description" }, { "data": "price" } ] }); }); ``` 4. 在后端处理请求的页面(这里以 ASP.NET Web Forms 为例),查询数据库并将结果返回给前端。可以使用 ADO.NET 连接到数据库,查询数据并将结果转换为 JSON 格式。 ```csharp protected void Page_Load(object sender, EventArgs e) { // 构造 SQL 查询语句 string sql = "SELECT img_url, name, description, price FROM products"; // 连接数据库 string connectionString = ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString; using (SqlConnection connection = new SqlConnection(connectionString)) { SqlCommand command = new SqlCommand(sql, connection); connection.Open(); // 执行查询 SqlDataReader reader = command.ExecuteReader(); DataTable dataTable = new DataTable(); dataTable.Load(reader); // 将查询结果转换为 JSON 格式并返回给前端 string json = JsonConvert.SerializeObject(dataTable, Formatting.Indented); Response.Clear(); Response.ContentType = "application/json; charset=utf-8"; Response.Write(json); Response.End(); } } ``` 这样,就可以在 C# Web 应用程序中使用 Bootstrap 的 DataTable 插件从数据库查询数据并显示一个包含图片的列表了。注意,这里只是简单地介绍了实现的思路,具体实现过程可能会因为不同的开发环境和需求而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值