代码改变世界

一些文件夹或文件的作用

2008-09-23 11:20  jeff-zheng  阅读(732)  评论(1)    收藏  举报


文件夹名称
文件类型
注 释

Bin
.dll
包含应用程序所需的任何预生成的程序集

App_Browsers
.browser
包含应用程序特有的浏览器定义文件,ASP.NET用它来识别各浏览器及确定它们的功能

App_Code
.cs、.vb、.xsd、自定义的文件类型
包含作为应用程序的一部分编译的类的源文件。当页面被请求时,ASP.NET编译该文件夹
中的代码。该文件夹中的代码在应用程序中自动地被引用

App_Data
.mdb、.mdf、.xml
包含Microsoft Office Access和SQL Express文件以及XML文件或其他数据存储

App_GlobalResources
.resx
包含在本地化应用程序中以编程方式使用的资源文件

App_LocalResources
.resx
包含页面范围的资源文件

App_Themes
.skin、.CSS、.xsl、附属文件
包含一组定义ASP.NET页面和控件外观的文件

App_WebReferences

.wsdl

1. Bin文件夹
Bin文件夹包含应用程序所需的,用于控件、组件或者需要引用的任何其他代码的可部署程
序集。该目录中存在的任何.dll文 件将自动地链接到应用程序。


2. App_Browser文件夹

该可选的文件夹包含.browser文件。.browser文件描述浏览器(不管是移动设备浏览器,还
是台式机浏览器)的特 征和功能。


3. App_Code文件夹

App_Code文件夹正好在Web应用程序根目录下,其存储所有应当作为应用程序的一部分动态
编译的类文件。这些类文件自 动链接到应用程序,而不需要在页面中添加任何显式指令或
声明来创建依赖性。App_Code文件夹中放置的类文件可以包含任何可识别的ASP.NET组件
——自定义控件、辅助类、build提供程序、业务类、自定义提供程序、HTTP处理程序等。

注意 在开发时,对App_Code文件夹的更改会导致整个应用程序重新编译。对于大型
项目,这可能不受欢迎,而且很耗时。为此,鼓励大家将代码进行模块化处理 到不同的类
库中,按逻辑上相关的类集合进行组织。应用程序专用的辅助类大多应当放置在App_Code文
件夹中。

App_Code文件夹中存放的所有类文件应当使用相同的语言。如果类文件使用两种或多种语言
编写,则必须创建特定语言的子目录,以包含用每种语言编写的类。一旦根据语言组织这些
类文件,就要在web.config文件中为每个子目录添加一个设置:

<compilation>

<codeSubDirectories>

<add directoryName="VBFolder" />

</codeSubDirectories>

</compilation>

重要的是,特定语言的子目录应在web.config文件中注册,否则,不管它们属于哪个文件夹
,App_Code文件夹下 的所有文件将被编译成一个单独的程序集。上述配置脚本描述了这么
一种情况,即所有的C#文件都放在App_Code文件夹的根目录下,而把几个 Visual Basic
.NET类文件移入VBFolder目录中。如果<codeSubDirectories>节中提到的目录不存在,则
会收到一个编译错误提 示。

App_Code根文件夹中的文件被编译成App_Code_xxx.dll程序集,其中xxx是随机生成的字符
序列。一个 给定子目录中的文件将被编译成一个名为App_SubCode_xxx_yyy.dll的动态创
建的程序集,其中xxx指示子目录的名称,而yyy是一个 随机字符序列。只有在应用程序根
目录中的web.config文件中进行了设置,<codeSubDirectories>节才有效。

在App_Code目录或任何其他子目录中放置一个assemblyinfo.cs文件,可以创建一个强命名
的程序集。显然,如果该文件夹包含Visual Basic .NET文件,那么将使用
assemblyinfo.vb文件。程序集配置文件可以引用一个.snk文件来保存强名称的密钥。

注意 给一个程序集设置一个强名称,首先必须获得一个公开/私有密钥对。通过
使用强名称(Strong Name)工具(sn.exe),可以获得这样一个密钥对。强名称工具是我们可
以在.NET Framework的安装路径中发现的SDK binary之一。密钥对文件通常有一个.snk扩
展名。可以将该文件保存到一个应用程序文件夹中,并在assemblyinfo.cs文件中引用它,
如下所示:

[assembly: AssemblyKeyFileAttribute(@"yourKeyPair.snk")]

注意,Visual Basic .NET是在包含Visual Studio Solution的目录中寻找密钥文件,
而C#编译器则在包含该binary的目录中寻找密钥文件。据此可知,用此属性调整我们使用的
路径,或者把密钥文件放在合适的文件夹中。

在随后发生的任何重新生成中,程序集的名称将发生变化。同时,老的AppDomain请求一结
束,就删除老的程序集。

App_Code文件夹并非只能包含类文件。特别是,它可以包含并能自动地处理代表数据架构的
XSD文件。把一个XSD文件 添加到该文件夹中时,编译器将把它解析成一个有类型的
DataSet类,并将它添加到应用程序作用域中。在ASP.NET 1.x中,这一工作由Visual
Studio .NET向导,使用一个命令行实用程序(xsd.exe)完成的。

注意 使用web.config文件注册一个组件(例如,一个自定义的服务器控件或一
个自定义的HTTP处理程序)时,通常要求指定包含该代码的程序集名称。如 果该组件定义
在App_Code文件夹中,则应该用什么名称来指示程序集?在这种情况下,只是忽略程序集信
息,并规定完整的类名即可。如果没有规定任何程 序集,则ASP.NET运行库将试图从任何
已装载的程序集中装入该类,包括为App_Code文件夹动态创建的程序集。



4. App_Data文件夹

App_Data文件夹应该包含应用程序的本地数据存储。它通常以文件(诸如Microsoft
Access或Microsoft SQL Server Express数据库、XML文件、文本文件以及应用程序支持
的任何其他文件)形式包含数据存储。该文件夹内容不由ASP.NET处理。该文件夹是ASP.NET
提供程序存储自身数据的默认位置。

注意 默认ASP.NET帐户被授予对文件夹的完全访问权限。如果碰巧要改变
ASP.NET帐户,一定要确保新帐户被授予对该文件夹的读/写访问权。


5. App_GlobalResources文件夹



6. App_LocalResources文件夹

7. App_Themes文件夹

App_Themes文件夹为ASP.NET控件定义主题。主题包含在App_Themes文件夹下的一个文件夹
。根据定义,一个主题是一组带有样式信息的文件。主题文件夹中的文件内容被编译,以生
成一个类,而该类被页面调用以编程的方式设置主题化控件的样式。

App_Themes文件夹列出应用程序的本地主题。 应用程序还可以继承如下文件夹中定义的全
局主题:

%WINDOWS%"Microsoft.NET"Framework"[version]"ASP.NETClientFiles"Themes

从编译的角度看,全局主题和局部主题没有区别。如果一个给定名称的主题,既存在应用程
序的本地主题,又存在服务器机器的全局主题,则本地主题优先适用。

8. App_WebReferences文件夹

在Visual Studio .NET 2003中,一个需要访问Web服务的ASP.NET应用程序,将通过“添
加Web引用”对话框获得相应的.wsdl文件。Web服务的WSDL(Web Service Description
Language)文档,对于从页面使用Web服务是不够的。ASP.NET页面最终是一个托管类,并且
需要与另一个托管类通信。因此,Web服务被一个 代理类所包装。该代理类是由Visual
Studio使用命令行工具wsdl.exe的服务创建的。该代理类尽量包含与Web服务商的Web方法一
样多的方法,并且它结合了Web服务的公共接口 定义的任何自定义的数据类型。

这个操作不需要开发人员付出很大的代价。然而,开发人员显然要依赖于Visual Studio来
生成代理类。如果能够直接把.wsdl文件放在应用程序的目录树的某个地方,并让ASP.NET处
理其余的任务,这样不是更容易、更简单 吗?这正好是App_WebReferences文件夹要做的
事情。

它识别那些用来描述所绑定的Web服务的.wsdl文件,并生成运行时代理类,以便ASP.NET页
面能够以类型安全的方式 放置对Web服务的调用。App_WebReferences文件夹可以包含子文
件夹。子文件夹的名称驱动最后所得到的代理类的命名空间,而WSDL文件 定义类名。例如
,samples.wsdl文件和ProsAspNet20子文件夹将创建一个称为ProAspNet20.Samples的代理
类。该动 态创建的程序集称为App_WebReferences.xxx.dll,其中xxx是一个随机的字符序
列。

 

附文件名和文件 作用表

 

目录 作用 备注
Admin 管理目录
Analytics 网站统计分析目录
API 整合接口目录
App_Browsers 针对不同的浏览器,应用不同的输出HTML,CSS等
App_Code

App_Data 数据库脚本 包含数据库查询脚本
App_GlobalResources 资源文件目录
App_Themes 主题目录
bin Bin目录,DLL组件全部放在这里
Comment 评论目录
Common 公共目录
CommonTemplate 模型自动生成标签的模板目录
Config 配置文件目录
Controls 控件目录
Editor 编辑器目录
IAA 广告目录
Images 网站图片目录
Install 安装系统程序,升级程序目录
JS 网站JS目录
Languages 语言包
MailSubscribe 邮件订阅目录
PayOnline 在线支付接口目录
Prompt 网站错误成功信息提示目录
Rss RSS目录
Shop 商城目录
Skin 风格目录
Survey 问卷调查目录
Temp 导出/导入数据库/临时文件目录
Template 网站标签库/模板目录
UploadFiles 上传目录
User 会员中心目录
Wap WAP目录
WebServices WebServices文件,提供对外服务
Admin"Accessories 附件管理
Admin"ADZone 广告管理
Admin"Analytics 网站统计分析
Admin"Collection 采集管理
Admin"Common 公共目录
Admin"CommonModel 模型管理
Admin"Configuration 网站配置管理
Admin"Contents 内容管理
Admin"Crm CRM
Admin"Images 图片
Admin"JS JS
Admin"Profile 工作台首页等
Admin"Prompt 后台成功错误提示
Admin"Shop 商店管理
Admin"SMS 短信管理
Admin"Ssms 学生成绩管理(待开发)
Admin"Statistics 网站统计
Admin"Survey 调查
Admin"Template 模板标签管理
Admin"User 用户管理
Admin"Common"MainMenu 菜单管理
Admin"Images"Comment 后台评论图片
Admin"Images"Folder 后台文件夹图片
Admin"Images"LabelIco 标签图标
Admin"Images"LoginImages 登录图标
Admin"Images"Node 节点图标
Admin"Images"TreeLineImages 树形菜单图片 已不使用,图片已封装到资源文件中,可删除。
Admin"JS"tool-man 一个很流行国外js库
ttp://tool-man.org

App_Themes"AdminBlueTheme 后台深蓝主题
App_Themes"AdminDefaultTheme 系统后台默认主题
App_Themes"AdminGreenTheme 后台草绿主题
App_Themes"DefaultTheme 默认主题 暂没用上
App_Themes"UserDefaultTheme 会员中心主题
App_Themes"AdminBlueTheme"Images 后台深蓝主题图片
App_Themes"AdminDefaultTheme"Images 系统后台默认主题图片
App_Themes"AdminGreenTheme"Images 后台草绿主题图片
App_Themes"UserDefaultTheme"Images 会员中心主题图片
Controls"Company 公司用户控件
Controls"Crm 客户关系用户控件
Controls"FieldControl 字段用户控件
Controls"Shop 商店用户控件
Controls"Statistics 后台内容管理 网站统计 控件组
Controls"WebPart WebPart用户控件
Editor"Editor 编辑器目录
Editor"Editor"css 编辑器样式
Editor"Editor"dialog 编辑弹出窗体管理
Editor"Editor"filemanager 编辑器文件系统管理 已去掉
Editor"Editor"images 编辑器图片
Editor"Editor"js 编辑器 js api
Editor"Editor"lang 编辑器 语言包
Editor"Editor"plugins 编辑器插件
Editor"Editor"skins 编辑器风格
Editor"Editor"_source 编辑器源代码
Editor"Editor"dialog"common 编辑器常用js组件库
IAA"ADTemplate 广告模板目录
Install"Images 系统安装图片目录
JS"lib 扩展的js 原形类
Languages"zh-CHS 中文语言包
Prompt"images 前台界面的成功失败图片
Template"PluginLabelPlus 模块扩展插件
User"Accessories 会员中心用户附件管理
User"Common 用户配置文件
User"Company 用户企业管理 创建企业等
User"Contents 用户信息管理相关文件
User"Crm 用户中心客户关系
User"Images 用户图片
User"Info 用户信息管理相关文件
User"Message 用户中心短消息
User"Shop 用户中心商店
User"UserFriend 用户中心好友



Ajax.aspx 相关Ajax文件 Ajax访问都通过这个文件
app_offlineX.htm 固定文件 当网站维护中时,可以把名称改为app_offline.htm,访问站点地址都会跳到该页面。ASP.net2.0的功能
Category.aspx 显示栏目
Default.aspx 网站首页文件
Global.asax ASP.NET应用程序文件
Item.aspx 信息显示文件
License.txt SiteFactory 用户许可协议
Login.aspx 会员登陆文件
Print.aspx 文章打印文件
robots.txt 相关搜索引擎配置文件 修改方法:http://bbs.chinaz.com/Archiver/Club/thread-1050969-1.html
Search.aspx 搜索文件
ShowComment.aspx 查看评论文件
Special.aspx 专题显示文件
Tag.aspx 显示热门关键字文件
Web.config 配置文件