【问题标题】:How to add namespace in aspx file?如何在 aspx 文件中添加命名空间?
【发布时间】:2010-03-03 08:18:15
【问题描述】:

我在 aspx 文件中添加了 C# 代码,但它显示错误

类中不存在类型或命名空间名称“Mail”或 命名空间“System.Net”(您是否缺少程序集引用?)

我如何将nampespace添加到我尝试过<%@ import namespace="Westwind.Tools"%>但它不起作用的aspx文件?

【问题讨论】:

    标签: asp.net


    【解决方案1】:
    <%@ Import Namespace="System.Net.Mail" %>
    

    【讨论】:

    • 这不是针对 MVC 意识形态的吗?所有数据都应该在模型内部,只有模型应该负责获取自定义数据。
    • @Johnny_D 是的...就像使用 Web 表单创建 MVC 应用程序一样顺利...
    • 在我们已经说过使用 C# 的页面中必须使用 Import (VB) 似乎总是很奇怪
    【解决方案2】:

    我假设它在一个网站中并且该页面没有隐藏代码?

    <%@ Page Language="C#" %>
    <%@ Import Namespace="System.Net.Mail"%>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <script runat="server">
    
    
            protected void Page_Load(object sender, EventArgs e)
            {
                System.Net.Mail.SmtpClient client = new SmtpClient();
    
    
            }
    
    </script>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
    
    </body>
    </html>
    

    这似乎对我有用。

    如果它不在网站中和/或它背后有代码,为什么需要在 aspx 文件中引用命名空间?

    希望对你有帮助

    【讨论】:

    • 但为什么它对我不起作用?仍然是同样的错误,请参阅链接worldwidefreightservices.com/sb/sheery/new.aspx
    • 我已经输入了与您给出的相同的代码,但仍然出现相同的错误,请参阅链接worldwidefreightservices.com/sb/sheery/me.aspx
    • 错误显示它正在使用 "Microsoft .NET Framework Version:1.1.4322.2443; ASP.NET Version:1.1.4322.2407" 但 System.Net.Mail 仅在版本 2 中进入 .net。 ..msdn.microsoft.com/en-us/library/system.net.mail.aspx
    • 这意味着您在 IIS 中的网站配置尚未设置为使用 .net 2。如果您有远程桌面访问服务器的权限,则需要通过 IIS 管理器进行设置。否则,它将需要通过您的托管管理控制台进行更新,或向您的主机提供支持票。
    【解决方案3】:

    要全局添加命名空间而不是逐页添加,只需将命名空间放在 web.config 中即可。

    <configuration>
      <system.web>
        <pages>
          <namespaces>
            <add namespace="Your.Namespace"/>
          </namespaces>
        </pages>
      </system.web>
    </configuration>
    

    您可能需要重新启动 Visual Studio 才能启动 IntelliSense。

    您还可以在目录中创建一个 mini web.config,仅将命名空间导入该目录和子目录中的 ASPX 文件,而不是全局应用它。

    【讨论】:

      猜你喜欢
      • 2011-11-27
      • 1970-01-01
      • 2012-09-15
      • 2010-10-30
      • 1970-01-01
      • 2014-05-12
      • 2015-09-12
      • 2014-07-17
      • 2016-11-17
      相关资源
      最近更新 更多