为什么我应该在每个aspx页面中包含命名空间?

时间:2012-09-14 12:59:49

标签: c# asp.net namespaces code-behind

我通常包含我的命名空间,例如

using myProject.Model; 

到我的.cs文件 但是当我想在我的.aspx文件中迭代从myProject.Model派生的对象时,我必须始终包含指令

<%@ Import Namespace="myProject.Model" %>

为什么?我的意思是如果它在default.aspx的文件(在default.aspx.cs)中的代码中声明为什么我应该再次添加它?为什么不可用?

只是想知道,但我想知道为什么会这样。

提前谢谢!

3 个答案:

答案 0 :(得分:4)

您可以在web.config中添加namespaces element,以指定您希望自动导入的命名空间。

答案 1 :(得分:2)

因为ASPX页面是使用不同的“WebPage”编译器编译的,所以必须为每个页面指定命名空间,因为您需要从该命名空间中获取某些特征。

答案 2 :(得分:1)

因为@Import指令允许您指定要为Asp.Net页面或用户控件导入的命名空间,而import关键字用于指定要为代码隐藏导入的命名空间。