【问题标题】:saving image into database which is generated dynamically and saved in image button将图像保存到动态生成并保存在图像按钮中的数据库中
【发布时间】:2016-09-15 07:29:04
【问题描述】:
 Random rd = new Random();

            string data = rd.Next(111111111, 999999999).ToString();

            QRCodeGenerator q = new QRCodeGenerator();

            QRCodeGenerator.QRCode qc = q.CreateQrCode(data,

            QRCodeGenerator.ECCLevel.Q); 
            System.Drawing.Bitmap bm = qc.GetGraphic(28);
            MemoryStream ms = new MemoryStream();
            bm.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
            byte[] b = ms.ToArray();
            Image1.ImageUrl = "data:image/png;base64," +                                                                              `Convert.ToBase64String(b);`
            String qr = Image1.ImageUrl.ToString();

我已生成二维码并放入 imagebox 我需要将其保存到 asp.net 中的 sql 数据库

【问题讨论】:

标签: html sql asp.net image qr-code


【解决方案1】:

我认为您不想将实际图像保存在数据库中,只需将其链接:

        Random rd = new Random();
        string Path="D:\data\images\"; //folder where you want to store images
        string data = rd.Next(111111111, 999999999).ToString();
        QRCodeGenerator q = new QRCodeGenerator();
        QRCodeGenerator.QRCode qc = q.CreateQrCode(data,
        QRCodeGenerator.ECCLevel.Q); 
        System.Drawing.Bitmap bm = qc.GetGraphic(28);
        Guid uniqueid=new Guid();
        bm.Save(path+uniqueid.ToString()+'.png', System.Drawing.Imaging.ImageFormat.Png); 

您只需将指向此文件的链接保存在数据库中 (此 png 文件的路径和文件名)以及您将查询以获取此链接的标识符。

你需要在数据库中创建一个表,添加需要的字段 (一旦你这样做了,我可以帮助你进一步在数据库中插入记录)

【讨论】:

    【解决方案2】:

    首先用SQL创建一个数据库,像这样:

    CREATE DATABASE QRDataBaseEntities
    GO
    CREATE TABLE Photo
    (
        PhotoID INT IDENTITY PRIMARY KEY,
        Name NVARCHAR(100),
        Photo VARBINARY(MAX)
    )
    

    然后在 C# 中创建一个函数,如下所示:

    void SaveOnDatabase()
    {
            QRDataBaseEntities DbContext = new QRDataBaseEntities();
            Photo Item = new Photo();
            Item.Name = Image1;
            Item.Photo=b;
    
            DbContext.Photos.Add(Item);
            DbContext.SaveChanges();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多