C# 配置管理器的问题

C# 配置管理器的问题,c#,.net,configurationmanager,C#,.net,Configurationmanager,我正在创建一个网站,作为一个表单,但包括两个级联下拉列表,这样一个从另一个饲料。我使用了下面的示例来创建我的列表。我对c.net开发相当陌生,因此需要学习教程 我已经更改了所有相关的代码区域,以指向正确的表和数据库进行查询。当我运行应用程序时,Configuration Manager出现问题。我查了一下,并按照此提要中的说明进行了操作: 我点击f5在visual studio中运行,得到了一个稍微不同的非合法操作错误,因此在此处应用了建议: 在所有这些之后,我仍然得到以下信息: 异常用户未处

我正在创建一个网站,作为一个表单,但包括两个级联下拉列表,这样一个从另一个饲料。我使用了下面的示例来创建我的列表。我对c.net开发相当陌生,因此需要学习教程

我已经更改了所有相关的代码区域,以指向正确的表和数据库进行查询。当我运行应用程序时,Configuration Manager出现问题。我查了一下,并按照此提要中的说明进行了操作:

我点击f5在visual studio中运行,得到了一个稍微不同的非合法操作错误,因此在此处应用了建议:

在所有这些之后,我仍然得到以下信息:

异常用户未处理 System.NullReferenceException:“对象引用未设置为对象的实例” System.Configuration.ConnectionStringSettingCollection.this[string]。get返回null

这是我的密码:

 <connectionStrings>
    <clear/>
    <add name="conString" 
         connectionString="Data Source=CATE01-SRV-05;
    Initial catalogue=iSAMS;Integrated Security=true"/>
  </connectionStrings>

public partial class CoCurricular : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            CategorySelect.AppendDataBoundItems = true;
            String strConnString = ConfigurationManager
                .ConnectionStrings["conString"].ConnectionString;
            String strQuery = "select TblActivityManagerFolderID, txtName from dbo.TblActivityManagerFolder";
            SqlConnection con = new SqlConnection(strConnString);
            SqlCommand cmd = new SqlCommand();
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = strQuery;
            cmd.Connection = con;
            try
            {
                con.Open();
                CategorySelect.DataSource = cmd.ExecuteReader();
                CategorySelect.DataTextField = "txtName";
                CategorySelect.DataValueField = "TblActivityManagerFolderID";
                CategorySelect.DataBind();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();
            }
        }
    }



    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        ActivitySelect.Items.Clear();
        ActivitySelect.Items.Add(new ListItem("--Select Activity--", ""));

        ActivitySelect.AppendDataBoundItems = true;
        String strConnString = ConfigurationManager
            .ConnectionStrings["conString"].ConnectionString;
        String strQuery = "select txtName from dbo.TblActivityManagerGroup " +
                           "where intFolder=@TblActivityManagerFolderID";
        SqlConnection con = new SqlConnection(strConnString);
        SqlCommand cmd = new SqlCommand();
        cmd.Parameters.AddWithValue("@TblActivityManagerFolderID",
            CategorySelect.SelectedItem.Value);
        cmd.CommandType = CommandType.Text;
        cmd.CommandText = strQuery;
        cmd.Connection = con;
        try
        {
            con.Open();
            ActivitySelect.DataSource = cmd.ExecuteReader();
            ActivitySelect.DataTextField = "txtName";
            ActivitySelect.DataValueField = "TblActivityManagerGroupID";
            ActivitySelect.DataBind();
            if (ActivitySelect.Items.Count > 1)
            {
                ActivitySelect.Enabled = true;
            }
            else
            {
                ActivitySelect.Enabled = false;
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
        finally
        {
            con.Close();
            con.Dispose();
        }
        }
    }

确保将配置放在web应用程序旁边部署的web.config中。您应该添加对系统的引用。configuration@Igal23谢谢,我已经使用System.Configuration引用了它,还右键单击了我的项目Add-Reference,并在这里选择了它,以确保它被引用。这并没有解决问题。@CodeCaster谢谢,这是我的web.config文件:谢谢-我意识到了我的问题。我在web.config和web.debug.config中都有冲突的代码,我调用了错误的名称。你的建议帮助我了解了我的问题。