【问题标题】:asp.net website project not able to pickup namespaces from dllasp.net 网站项目无法从 dll 中提取命名空间
【发布时间】:2014-06-27 20:02:03
【问题描述】:

我正在将 appcode 从网站项目移动到单独的 dll,但是在我移动它们并编译它之后,有一些前端控件引用 appcode 中的类在 appcode 之后无法再获取这些类移动到 anotehr dll,我需要在 ascx 文件顶部添加一行,上面写着 在每个引用该类的文件中,有更好的方法吗?为什么不能自动识别dll中的类?

【问题讨论】:

  • 命名空间不是“class.name”的形式。它采用命名空间.子命名空间的形式。例如,您有一个名为MyNameSpace.MySubnamespace.MyClass 的类。要导入的命名空间是MyNameSpace.MySubnamespace

标签: c# asp.net


【解决方案1】:

添加到 web.config(参见命名空间)

例子:

<system.web>
<pages>
  <namespaces>
    <add namespace="System.IO" />
    <add namespace="System.Text" />
    <add namespace="Westwind.Utilities" />
    <add namespace="Westwind.Web.Controls" />
  </namespaces>
  <controls>
    <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add tagPrefix="ww" namespace="Westwind.Web.Controls" assembly="Westwind.Web" />
  </controls>
</pages>

【讨论】:

  • 如果它是一个引用 dll 的用户控件怎么办?
  • 我想它会同样工作。您不需要在页面或用户控件上导入命名空间。
  • 这仅适用于 UI - 如果您尝试从 .cs 或 .vb 引用,它将不起作用
  • 谢谢,虽然将 appcode 移动到另一个 dll 最终导致网站建设速度变慢了 LOL
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-04-06
  • 1970-01-01
  • 1970-01-01
  • 2011-03-08
  • 1970-01-01
  • 2020-12-01
  • 1970-01-01
相关资源
最近更新 更多