【IT168 技术文档】
.NET文件类型解析
*.resx是资源文件。每个页面都有一个资源文件相对应。
global.asax是global.asa的.net版
global.asax.vb是global.asax的后台文件。
*.ascx是一个用户自定义控件。
*.ascx.vb是自定义控件的代码文件,C#的是*.ascx.cs
*.ascx.resx是自定义控件的资源文件。
*.aspx.vb是*.aspx页面的后台代码。
web.config是整个Web Application的配置文件。
*.vbproj是VB.NET的工程文件。
*.vsdisco是Web Service的文件。
*.vbproj.webinfo是VB.NET工程文件的Web Application文件。
*.sln是VS.NET的解决方案文件。
其中global.asax,global.asax.vb,web.config,*.vbproj,*.vsdisco,*.vbproj.webinfo,*.sln都是在建立一个VB.NET的Web Application工程的时候自动产生的。
ASP.NET的页面文件是*.aspx,每个页面对应一个*.resx资源文件和一个*.aspx.vb的代码文件
.NET文件类型:什么是资源文件
在 .NET 中准备 World-Ready 程序时需要三步,Globalization,Localizability 和 Localization。在这第三步的 Localization 中就是使用资源文件最常见的地方。(本文不讨论 World-Ready 程序,或许以后在另一篇文章中)因为程序的逻辑界面需要与资源界面隔离,而资源界面就是我们所说的资源文件。顾名思义,一个资源文件中当然全是资源,不过,什么是资源?这里所谓的资源就是程序中可利用的数据,譬如:字符串、图片和任何二进制数据,包括任何类型的文件。注意一个资源文件可以有多种语言版本,举例,一个 Strings.resources 文件可以有英语版、简体中文版、繁体中文版等。
ResourceManager 可以自动根据文件名来确认调用哪个版本。不同的版本只要在文件名中添入区域语言就可以了。比如,我们的 Strings.resources 是默认版,英语版的可以是 Strings.en-US.resources(美国英文),简体中文的可以是 Strings.zh-CHS.resources(简体中文),而繁体中文的就可以是 Strings.zh-CHT.resources(繁体中文)。所谓的默认版就是当找不到适当的资源版本时用的资源,一般都是英文。默认文件应当被嵌入到主 Assembly 中,这样就不会发生找不到资源的错误。在 VS.NET 中将一个文件的属性设为 Embedded Resource 可以使资源被嵌入到主 Assembly 中。
.NET文件类型:资源文件类型
System.Resources 名字空间支持三种资源文件:
.txt 文件,只能有字符串资源。因为不能被嵌入到 Assembly 中,所以很容易暴露,被客户修改。最大缺点是仅支持字符串资源,所以不推荐使用。
.resx 文件,由 XML 组成,可以加入任何资源,包括二进制。同样不能被嵌入到 Assembly 中。在 System.Resources 名字空间中有专用读写的类。VS.NET 创建这种文件然后将其转成 .resources 文件并根据设置将其嵌入到 Assembly 中。
.resources 文件,PE 格式,可以加入任何资源。唯一可以被嵌入到 Assembly 的文件,在 System.Resources 名字空间中有专用读写的类。