如何在ASP.NET和C#中每个会话“临时”存储Web服务器上的图像

前端之家收集整理的这篇文章主要介绍了如何在ASP.NET和C#中每个会话“临时”存储Web服务器上的图像前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在四处寻找,觉得我有一个特别独特的情况.

我正在从第三方程序(我嵌入到我的C#应用​​程序中)生成一个图像,该程序保存到我的Web服务器上的文件系统中.您知道在特定会话完成后处理这些图像的任何有效方法吗?

清晰度:
最初我在考虑一个文件夹(对于我的会话ID存储的图像),其内容每24小时左右自动删除一次.我不喜欢这个想法,因为它不是真正的可扩展性.

我还看了一下这个网站生成的ASP.NET动态图像.
http://www.sitepoint.com/article/generating-asp-net-images-fly/

但是这看起来有点过分,因为我的图像需要以这种或那种方式保存到文件系统中.如果我将图像保存为静态名称,然后使用上述方法从中生成位图我担心并发使用可能会破坏应用程序.

这使我保留了名称中包含会话ID的文件名,但是在会话结束后我找不到任何有效的清理图像的方法.

谢谢!

戴夫

更新:我非常喜欢到目前为止所提供的所有解决方案(我认为数据库不会因为我导出图像的方式而有效)我感谢你们所有的帮助…我将开始实施这些并且将会报告回来哪个效果最好!

Update2:我最终随机生成图像名称,存储它们,然后在会话结束时删除它们,感谢您的帮助.所有提出的方法都是很好的建议.对于这种特殊情况,虽然这种方法效果最好.

解决方法

跟踪列表中的临时文件名并在Session_End事件或每个页面的load或init事件中删除它们以编程方式检查会话超时并删除文件.

就像是:

if (Context.Session != null)
{
  if (Session.IsNewSession)
  {
    // delete temporary files
  } 
}
原文链接:https://www.f2er.com/aspnet/248778.html

猜你在找的asp.Net相关文章