老徐的博客

老徐的博客

Friends

Work

公告

没有公告

查看标签

所有标签>Compile (RSS)
缺少Assembly引起的The file has not been pre-compiled错误
今天在迁移一个站点时又遇到了一个怪异的The file has not been pre-compiled错误。 这个错误之前已经多次遇到过了,有时是因为Build时的Compile选项问题引起,有时又是文件编码不一致引起的,所以没回都会大动干戈折腾一番才能找到原因。 但这次只是一个Service站点的迁移,而且只有三个.asmx文件,按理说查找原因是很快的。但是因为在原站点却能运行正常,两者之间只是部署环境有点差异,所以就显得比较怪异了。 后来终于发现是因为web.config的<assemblies>配置节里引用了一个第三方的assembly...
ASP.NET编译模式与pdb文件
之前的文章里有提到ASP.NET编译时会自动输出pdb文件,以及ASP.NET调试时看到的是MSIL的代码。现在特意更正一下,这个说法是错误的。 因为前两天我自己在运行时调试的时候,发现当调试进入ASP.NET页面代码的时候,即使选了Disassembly,看到的其实已经是JIT编译之后native的反汇编代码,而不是MSIL或者源代码。而正确引用了pdb文件的dll如enterprise library就能看到源码。 这就涉及到ASP.NET项目的编译模式问题了。目前在VS 2005里有两种ASP...
如何手工抓取dump文件
在生产环境下进行故障诊断时,为了不终止正在运行的服务或应用程序,有两种方式可以对正在运行的服务或应用程序的进程进行分析和调试。 首先一种比较直观简洁的方式就是用WinDbg等调试器直接attach到需要调试的进程,调试完毕之后再detach即可。但是这种方式有个缺点就是执行debugger命令时必须先break这个进程,执行完debug命令之后又得赶紧F5让他继续运行,因为被你break住的时候意味着整个进程也已经被你挂起。另外也经常会由于First Chance Excetpion而自动break...
符号服务器和.NET Framework与Windows内核代码调试
只需要在VS中设置符号服务器,就能在调试应用程序时进入.NET Framework和Windows内核代码。下面我们以VS2005调试.NET代码为例看一下怎么设置。 1.在 VS2005工具\选项\符号 (Tools\Options\Symbols),添加如下符号文件位置(符号服务器): http://msdl.microsoft.com/download/symbols 并建议设置混存到本地符号服务器的共享目录, 如 \\symserver\Symbols 2.如要进入.NET Framework代码...
在VS2005里设置编译时输出.pdb文件
为便于运行时调试的需要,在编译Release版本时,也应该选择输出.pdb文件。 VS2005里对这个设置比较隐蔽,需要打开Project的属性->生成->高级, 选择里面的调试信息。 传个截图上来,一目了然的
文件编码不一致引起的has not been pre-compiled及base class is not compatible错误
在前几次部署站点的时候,都遇到过几个奇怪的错误,往往在开发环境是运行正常的,而编译之后部署到了生产环境却出现莫名其妙错误。 一是提示文件没编译,如: The file '/member/myupload/upload.aspx' has not been pre-compiled, and cannot be requested. 二是使用用户控件时提示基类不对,如: The base class includes the field 'WebUserControl1'...
更多内容