我已经在子目录的web.config中定义了这个
<namespaces>
<remove namespace="App"/>
<add namespace="Tom"/>
</namespaces>
应用程序导入父web.config文件,Tom和App具有相同名称的类。
为了避免因模糊类名导致的错误,我从使用Tom命名空间的子目录中删除了App命名空间。
但是,命名空间App仍然导入到在Tom目录之外具有母版页的内容页面上。这会导致上述错误。
这是我的目录结构
-Root Directory
--Default.master
--web.config (App is added in web.config)
--Tom Sub-diretory
---web.config (App is removed in web.config)
---Content page that uses Default.master (Here is the problem)
---Page without master (Works OK)
任何解决方案?
答案 0 :(得分:0)
假设您在根web.config中有以下内容:
<namespaces>
<add namespace="App" />
<add namespace="Tom" />
</namespaces>
在你的子web.config中:
<namespaces>
<remove namespace="App" />
<add namespace="Tom" />
</namespaces>
在子文件夹的.aspx
页面中使用该类是没有问题的,即使它们来自根文件夹中的母版页,但您无法在母版页中使用它。在根母版页中,您需要完全限定类型:<%= App.DuplicateType %>
或<%= Tom.DuplicateType %>
。
答案 1 :(得分:0)
如何使用命名空间明确地加上用法?这应该永远有效。