Bin和AppCode文件夹
原文链接:http://hi.baidu.com/im886/blog/item/49fc211296a74658f919b836.html 如果您的 Web 应用程序包括要在多个页之间共享的代码,您可以将代码保存在 Web 应用程序根目录下的两个特殊文件夹(Bin 文件夹和 App_Code 文件夹)中的某个文件夹中。 Bin 文件夹 Bin 文件夹中的程序集无需注册。只要 .dll 文件存在于 Bin 文件夹中,ASP.NET 就可以识别它。如果您更改了 .dll 文件,并将它的新版本写入到了 Bin 文件夹中,则 ASP.NET 会检测到更新,并对随后的新页请求使用新版本的 .dll 文件。 Bin 文件夹的安全性 请注意以下安全方面的知识,这些知识与是否将已编译的代码放入 Bin 文件夹有关: Bin 文件夹中程序集的作用范围为当前应用程序。因此,它们无法访问当前 Web 应用程序之外的资源或调用当前 Web 应用程序之外的代码。 运行时,程序集的访问级别由本地计算机上指定的信任级别确定。有关更多信息,请参见 ASP.NET 信任级别和策略文件。 如果您使用了诸如 Visual Studio 这样的设计器,那么 Bin 文件夹中的代码运行所在的上下文与运行时不同。例如,代码可能以完全信任状态运行。 App_Code 文件夹 App_Code 文件夹可以包含以传统类文件(即带有 .vb、.cs 等扩展名的文件)的形式编写的源代码文件。但是,它也可以包含并非明确显示出由某一特定编程语言编写的文件。例如 .wsdl(Web 服务发现语言)文件和 XML 架构 (.xsd) 文件。ASP.NET 可以将这些文件编译成程序集。 根据您的需要,App_Code 文件夹可以包含任意数量的文件和子文件夹。您可以采用任何您认为方便的方式组织源代码,ASP.NET 仍会将所有代码编译成单个程序集,并且 Web 应用程序任意处的其他代码都可以访问该程序集。 如果 App_Code 文件夹只包含并未明确表明编程语言的文件(如 .wsdl 文件),则 ASP.NET 将使用 Web 应用程序的默认编译器,默认编译器在 Web 应用程序或计算机配置文件的 compilation 元素中确定。 但是,您可以对 Web 应用程序进行配置,使其将 App_Code 文件夹的子文件夹作为独立的可编译单元处理。这样,每一个文件夹就可以包含以不同编程语言编写的源代码。通过在 Web.config 文件的 codeSubDirectories 元素中创建一个 compilation 元素,然后添加一个对子文件夹的引用,即可指定该配置。下面的示例阐释如何对名为 VBCode 和 CSCode 的子文件夹进行配置,使其编译成不同的程序集: 复制到剪贴板<compilation debug="false"> |