代码改变世界

对aspx等页面进行预编译以进行编译期检查

  Jeffrey Zhao  阅读(14062)  评论(5编辑  收藏  举报

话说在开发Web应用程序时能够很轻易地对后台代码进行编译,并获得编译时的错误。可惜有时候我们对后台代码进行重构或Find all references的时候都会忽略aspx,ascx和master等文件里的代码,因为它们只有在打开时(执行期)才能发现错误。这是一个非常惹人厌的问题,但是事实上,我们只需要对一个asp.net目录下的文件进行预编译即可发现哪里出现问题。在项目中我经常会准备一个bat脚本:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler -v / -p .\WebRoot -f -errorstack .\Temp

当运行这个脚本时,aspnet_compiler命令就会对WebRoot目录进行预编译,并且将error打印出来(具体参数的作用可以查找文档)。需要注意的是,aspnet_compiler编译的目标是文件夹,可能有的编译失败是由一些额外的aspx文件引起的,它们并没有被包含在VS的项目文件中。

事实上,在ASP.NET MVC RC版本中就会包含一个MSBuild任务来检查所有的View,其目的和上面那段脚本的目的较为类似。

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示