请教诸位高手们:因为以前一直用的是2000,因此没有遇到过这样的情况。但现在换了server 2003,问题来了...作了一个web application的Project,然后在Grobal.asax.vb中的Application_Start中写了一些关于Server.mappath的方法(主要是要做一些日志文件和JS文件操作之类的工作),系统运行一段时间之后,在一般的操作中会黄屏,发现JS文件找不到或者日志文件读写之类的出错,查了半天找不到原因(系统中没有找到对Server.mappath进行操作的语句)某天灵机一动,在Application_Start下加了一些语句,让她每次重启都记录一下Server.Mappath,结果发现5天之后,里面陆续找到十几条记录,而最后一条的Server.Mappath(""),居然跑到了一个子目录中去了..大寒,这样的话不错才怪。继续弄下去,总结了一些经验,有时候系统发生黄屏,就会触发Application_Start,如果这时候正好有别的浏览器处于系统子目录,就会导致以上的问题发生但是..这实在是没有道理的阿,难道Application_Start真的会多次启动吗?难道Server.MapPath真的会出错吗?(据某些人的说法是,2003有了新的垃圾收集机制,会把Application也收集掉,大寒ing...)请教诸位高手们,有什么不让Application多次启动的方法呢,或者说,有什么能定死Server.MapPath的方法呢?不过如果实在行就算了,干脆再作一个Config文件,但始终觉得不能用Server.MapPath挺可惜的。
解决方案 »
- js控制winform窗体
- Asp.net MVC 控制器的类名为什么一定是 XxxController??
- www.小说.com/武侠 这种怎么写出来的? 。谢谢。
- 高分求助,VS 2005中可以用Xquery吗?急,!
- Net.Framework是什么东西?
- 关于收件与发件的问题(站内短信)
- 不能在CheckBox 中绑定数据吗
- 找不到方法:“Void System.IO.MemoryStream.Close()”。急急急
- 急求购物系统源码!分不够再加!
- 后台代码指定控件ID,查看源文件后ID中特殊字符自动转换了?
- 动态生成文件夹 (C#) 急 谢谢!
- 在线等 有谁知道在 Visual Web Developer 2005 Express Edition Beta
我个人认为使用web.config比较好
每次Application_Start的时候,系统都会自动重新设置Server.Mappath这时候第一个访问系统的页面的目录会被设置成Server.Mappath(XP pro 和2003都是这样的,别的系统还没有试)看来还是我的理解有问题
微软的原话是“MapPath 将返回包含当前应用程序的目录的完整物理路径。”
也只是包括...包括而已...寒中