ASP.NET 预编译笔记
本来下写篇总结,但感觉自己语言不知道怎么组织。就算了。
aspnet_compiler的问题:
一开始
aspnet_compiler -v \ -p F: E: -fixednames
error ASPRUNTIME: 目标目录不是空的。请手动删除该目录,或选择其他目标目录。
aspnet_compiler -v \ -f -p F: E: -fixednames
error ASPRUNTIME: 目标目录非空。并且似乎包含以前编译的应用程序。请手动删除该目录,或选择其他目标目录。
换别的目录
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config(132): error AS PCONFIG: 未能加载类型“System.Data.Entity.Design.AspNet.EntityDesignerBuildProvider”。
算了,单纯命令行准备放弃治疗,后来发现VS2013在发布里面其实有预编译选项的,注意看ms build输出窗格的信息就知道VS怎么预编译了。后来想上面这个问题可能是我用了64位的aspnet_compiler有问题。我后来照着VS打是没问题的。
MVC动态View编译:
ASP.NET MVC以目录为单位的动态View编译,编译生成的程序集临时存放在ASP.NET的临时目录“%WinDir%\Microsoft.NET\Framework\{Version No}\Temporary ASP.NET Files\”下。比如我的就在
C:\Users\ABC\AppData\Local\Temp\Temporary ASP.NET Files.程序寄宿在IIS的话是在这个目录里的root里生成那类文件。VS的iis express则是vs子目录。
webform动态编译:
无
总结
按微软的说法,预编译最终用户可以避免第一次请求应用程序而导致的延迟。但实际上我体会不到。第一次请求依旧那么慢,而且后续的请求还是会编译缺失的view(也许是我之前弄错了?)我试过用RazorGenerator,但是失败了,结局没有实现其官方文档实现的效果。收获还是有的,我发现VS每改一遍代码然后生成,上文提到的临时目录里的profileoptimization.prof就会更新一遍,而第一次请求的时候,这个临时目录就会清空然后重新生成一遍。
我想最后最优解应该是增量编译吧。
参考链接:
DUDU:
http://www.cnblogs.com/dudu/archive/2011/02/07/aspnet_compiler_precompilation.html
MSDN:
http://msdn.microsoft.com/zh-cn/library/ms229863(v=vs.100).aspx
MVC
http://www.cnblogs.com/artech/archive/2012/09/04/razor-view-engine-01.html
ASP.NET
http://www.cnblogs.com/artech/archive/2007/05/26/760292.html
http://www.cnblogs.com/mqingqing123/archive/2006/03/06/343623.html
VS2012预编译选项(注意VS2013会有不同):
http://www.cnblogs.com/Ivony/archive/2011/10/26/2224696.html
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
ASP.NET 预编译笔记的更多相关文章
- ASP.NET 预编译
ASP.NET 预编译概述 https://msdn.microsoft.com/zh-cn/library/bb398860%28v=VS.90%29.aspx 如何:预编译 ASP.NET 网站以 ...
- asp.net 预编译和动态编译
在asp.net中,编译可以分为:动态编译Dynamical Compilation和预编译(Precompilation). 动态编译 深入剖析ASP.NET的编译原理之一:动态编译(Dynamic ...
- ASP.NET 预编译命令(解决发布后第一次访问慢问题)
ASP.NET 编译工具 (Aspnet_compiler.exe) 官方说明 新建bat文件 @echo off CD /d C:\Windows\Microsoft.NET\Framewo ...
- 关于ASP.NET预编译(转自dudu)
为什么要用预编译? 博客园博客程序中.aspx和.ascx文件总共加起来有3000多个(博客模板中有大量的.ascx文件).如果使用动态编译,每次只要更新bin文件夹中的任何一个dll文件,动态编译至 ...
- [转][ASP.NET]ASP.NET 预编译网站
[转自]https://msdn.microsoft.com/zh-cn/library/ms227430(v=vs.80).aspx C:\Windows\Microsoft.NET\Framewo ...
- ASP.NET 动态编译、预编译和 WebDeployment 项目(转)
概述 在 Web 服务器上,既可以部署源文件,也可以部署编译后程序集. 若部署源文件,则当用户访问时,Web 应用程序会被动态编译,并缓存该程序集,以便下次访问. 否则,若部署程序集,Web 应用程序 ...
- 体验 ASP.NET Core 1.1 中预编译 MVC Razor 视图
这是从 ASP.NET Core 1.1 官方发布博文中学到的一招,可以在 dontet publish 时将 Razor 视图编译为 .dll 文件. 需要在 project.json 中添加如下配 ...
- ASP.NET最误导人的错误提示:“未预编译文件,因此不能请求该文件”
昨天在一个ASP.NET MVC项目中,一个预编译后的视图访问时总是报错: 未预编译文件,因此不能请求该文件(The file has not been pre-compiled, and canno ...
- ASP.NET MVC5 视图预编译
ASP.NET MVC5 视图预编译 ASP.NET MVC5 视图预编译 关于Razor视图及引擎原理,就不多说了. 这里通俗或者不恰当地说,cshtml视图文件是先编译成dll文件,再通过视图 ...
随机推荐
- 第五章 企业项目开发--mybatis注解与xml并用
本章的代码建立在第四章<Java框架整合--切分配置文件>的项目代码之上,链接如下: http://www.cnblogs.com/java-zhao/p/5118184.html 在实际 ...
- 对于equals和==的理解
很多时候equals和==大家都分不太清楚怎么样来使用,今天小编就来教大家怎么使用 equals比较的是两个变量的值是否相等 而==则比较的是这个变量的内存地址是否相同 打个比方来说 String a ...
- 【转】Bri's改装笔记
网上关于三菱蓝瑟的改装方案的文章不少,但在以不换发动机为前提的理性改装确是这两篇和东南汽车俱乐部科仔的那篇<4G18的低成本NA玩法>最具参考价值. 小排量NA车的乐趣不在于跟人比直线加速 ...
- 程序媛计划——python爬虫
#用selenium打开百度首页 #第一次运行代码时应该在safari开发者选项中设置'allow remote automation' from selenium import webdriver ...
- FFMPEG的函数翻译文档
https://blog.csdn.net/explorer_day/article/category/6289310/2 https://www.cnblogs.com/tocy/p/ffmpeg- ...
- Python os.walk() 遍历出当前目录下的文件夹和文件
os.walk目录遍历 os.walk的参数如下: os.walk(top, topdown=True, onerror=None, followlinks=False) 其中: - top是要遍历的 ...
- ThinkPHP5.0手把手实现手机阿里云短信验证
阿里云短信服务介绍阿里云短信服务就是以前的阿里大于,不过现在融合得到阿里云平台了.首先,你需要注册一个阿里云账号,这个自行解决. 仅用于测试使用官方送的代金券够用了.相关配置1.开通阿里云Access ...
- JMeter基础:请求参数Parameters 、Body Data的区别
使用Jmeter测试时,很多人不知道请求参数Parameters .Body Data的区别和用途,这里简单介绍下 先了解一个接口的基本概念 在客户机和服务器之间进行请求-响应时,HTTP协议中包括G ...
- iOS多线程---NSOperation的常用操作
1.最大并发数: - (NSInteger)maxConcurrentOperationCount;- (void)setMaxConcurrentOperationCount:(NSInteger) ...
- 利用Django和装饰器做一个简单的修改密码页面
view视图代码: from django.shortcuts import render,redirect from django.http import HttpResponse from PIL ...