如何在aspx页面中正确声明命名空间

本文关键字:声明 命名空间 aspx | 更新日期: 2023-09-27 18:24:00

如果不得到"命名空间不能直接包含字段或方法等成员",我似乎无法将命名空间添加到.aspx页面。我的aspx项目的标题是这样设置的:

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data.SqlClient;"%>
<%@ Import Namespace="System.IO;"%>
<%@ Import Namespace="System.Net.Mail;"%>
<%@ Import Namespace="System.Text;"%>
<%@ Import Namespace="System.Web;"%>
<%@ Import Namespace="System.Linq;"%>
<%@ Import Namespace="System.Web.Security;"%>
<%@ Import Namespace="System.Web.UI;"%>
<%@ Import Namespace="System.Web.UI.WebControls;"%>
<%@ Import Namespace="System.Web.UI.WebControls.WebParts;"%>
<%@ Import Namespace="System.Web.UI.HtmlControls;"%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
    {
        lblDate.Text = DateTime.Now.ToString();
    }
//more functions

我确实在谷歌上搜索了一下,这让我回到了这里。这涉及到查找app.config文件。嗯,我的项目没有app.config,当我试图在VS2012中添加一个时,它甚至没有被列为选项。

如何在aspx页面中正确声明命名空间

不知道ASP.NET编译器为什么会给您那个特定的错误,但分号是导致问题的原因。你需要移除它们。

<%@ Import Namespace="System.Data.SqlClient" %>

在Joe上面所说的基础上,分号对于像C#或Java这样的面向对象语言来说很好,因为它们将分号视为语句的结尾。

在这样的语言中,它们根本就不需要,而且在导入的情况下,它将其视为命名空间的字面路径。因此,使用分号,它假设它也是命名空间路径的一部分,并且无法找到它。