可以在同一个项目内的同一个文件中查看和编译,该文件名为default.aspx.cs。
但是,当我尝试使用using DBConnStrings将命名空间包含在同一项目的另一个文件中时;声明 - >我不断收到编译器错误“无法找到类型或命名空间名称'DBConnStrings'”。
编译为default.aspx.cs的文件中的代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;
using DBConnStrings;
namespace DBConnStrings
{
public class GlobalStrings
{
public static string carSalesDBConnString =
ConfigurationManager.ConnectionStrings["ConnectionString2"].ToString();
}
}
public void BindManu()
{
SqlConnection conn = new
SqlConnection(GlobalStrings.carSalesDBConnString); // Connect to Carsales database
conn.Open();
// .....
}
其他文件虽然位于同一个项目中,但无法看到此命名空间。
如何让他们看到它?
答案 0 :(得分:1)
首先,我建议将方法BindManu
放入类中,因为我无法想象这会像那样工作。
但问题是:您必须指定整个命名空间。这意味着,如果具有DBConnStrings
命名空间的文件位于 test 文件夹中,则必须使用using test.DBConnStrings
来导入命名空间。您应该像这样命名命名空间以避免混淆(namespace test.DBConnStrings
)。
但实际上您不必指定整个路径,只需指定项目中的路径。这意味着,如果您的类位于 C:\ Users \ Foo \ Documents \ Visual Studio 2017 \ Projects \ BlaProject \ DirectoryA \ DirectoryB \ MyClass 中,项目位于 C:\ Users \ Foo \ Documents \ Visual Studio 2017 \ Projects \ BlaProject ,您的命名空间将是 BlaProject.DirectoryA.DirectoryB 。如果您使用的文件不在您的项目文件夹中,那么您必须添加一个引用并使用上面另一个项目中的路径(但显然有另一个项目名称)。如果要添加引用,请打开解决方案资源管理器,右键单击引用,选择添加引用,然后选择对项目的引用。
如果你不想挣扎,那么你可以让vs为你做。只需从其他命名空间键入您想要的类,它就会被标记为错误,单击灯泡并选择使用引用添加之类的内容。
此外,如果您想为项目添加一个类,请不要使用资源管理器 - 只需右键单击要在解决方案资源管理器中添加类的项目中的文件夹,选择添加,然后选择 New Item 。在弹出窗口中选择类并输入您的类名称。而已!