【发布时间】:2009-03-22 15:02:49
【问题描述】:
让我试着换个角度问这个问题。
我注意到每次使用“网站”模型在浏览器中呈现一个 aspx 页面时,都会在临时 ASP.NET 文件中“即时”创建一个随机程序集。分析 Reflector 中的程序集表明,为任何给定的 .aspx 文件创建的类都在“ASP”命名空间下。
所以,从一个空的“临时 ASP.NET 文件”目录开始,我在 VS2008 中打开了我的 ASP.NET“网站”,并启动了默认页面。我立即观察到该文件夹内生成了一个随机目录。一路走下去,我发现创建了 2 个 DLL:App_Code.1lywsqqz.dll 和 App_Web_iohekame.dll。我假设网站中的所有 .aspx 页面都编译为 App_Web dll,而 App_Code 文件夹中的所有内容都编译为 App_Code.dll。
所以如果我的 App_Code C#/VB.net 文件在“ASP”命名空间下,而我的 App_Web 文件是在“ASP”命名空间下创建的,为什么我仍然收到错误“无法加载类型 'ASP.NothwindDataContext '?
有人说“您不需要 App_Code 文件夹中的命名空间”,但我没有尝试过,但仍然得到“无法加载类型 'NorthwindDataContext'”。
那么 App_Code 文件夹、站点的其余部分和命名空间之间发生了什么?
编辑: 这是我的 .aspx 文件中的 LinqDataSource:
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="NothwindDataContext" EnableUpdate="True"
TableName="Categories">
</asp:LinqDataSource>
“NorthwindDataContext”和“ASP.NorthwindDataContext”都不起作用。
【问题讨论】:
标签: asp.net web namespaces app-code