服务器等待文件在Asp.net中保存完成C#

时间:2017-11-18 06:54:04

标签: c# asp.net

我将图片文件保存到Form_Load的文件夹中,并在客户端使用image。 有时不会显示image。但刷新页面image后显示。 我希望服务器等到image保存完毕。

  System.Drawing.Image barcodeImage = b.Encode(BarcodeLib.TYPE.CODE128, lstTicket[0].Barcode.ToString(), 250, 100);
   barcodeImage.Save(Server.MapPath("~/temp/") + lstTicket[0].Barcode.ToString() + ".jpg");

和客户端

  <div id="Barcode" style="text-align: center; margin-top: 10px;">
      <img src="/temp/<%=item.Barcode + ".jpg"%>" style="width: 200px; height: 40px;" />
  </div>

2 个答案:

答案 0 :(得分:1)

我遇到同样的问题,你的解决方案是:

您可以使用

$(window).on("load"),function(){}

而不是

$(document).ready(function () {}

在加载条形码图像并解决问题之后,警报框才会出现

答案 1 :(得分:0)

我很惊讶服务器不能及时写出这个图像,但也许你应该改变它的完成方式,而不是用条形码的图像填满服务器硬盘,写一个你放入的处理程序HTML作为img src例如<img src="barcode generator.ashx?id=12345" ...,当客户端浏览器调用该处理程序获取条形码时,将其生成为png(不是jpg,jpg永远不应该用于条形码)并发送它

看到这样的事情: Display Image using ashx Handler

这里的人正在根据URL中的主键供应从db中获取他的头像 - 您的情况不那么复杂 - 您可以直接生成条形码数据(将要生成的条形码值放入URL中HTML,作为参数

如果您需要更多代码示例等google,例如“生成图像动态ashx”