gpt4 book ai didi

c# - 获取 CS1518 : Expected class, 委托(delegate)、枚举、接口(interface)或结构错误

转载 作者:行者123 更新时间:2023-11-29 06:55:30 30 4
gpt4 key购买 nike

我是 C# 的新手,我正在尝试学习(最近我一直在问几个关于它的问题——我唯一的编程知识是 Python、PHP 和 Javascript)。不管怎样,我在网上找到了一些关于如何在 C# 中生成选择列表的示例,我正在尝试使用/修改它们以适应我现有的代码。结果出现了预期的类错误 - 但我正在创建一个类!这是我的代码:

private void PeerReview()
{

MySqlConnection connection;
string connStringName = "server=localhost;database=hourtracking;uid=username;password=password";
connection = new MySqlConnection(connStringName);

cmd.CommandText = "select name from peer_review_info where active_status=1";
cmd.Connection = connection;
connection.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
ListItem item = new ListItem();
item.Text = sdr["peerrevid"].ToString();
item.Value = sdr["peerrevid"].ToString();
item.Selected = Convert.ToBoolean(sdr["IsSelected"]);
chkPeerRev.Items.Add(item);
}
}
connection.Close();
}
}
}

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.PeerReview();
}
}

最佳答案

你的右大括号太多了。应该是:

private void PeerReview()
{
MySqlConnection connection;
string connStringName =
"server=localhost;database=hourtracking;uid=username;password=password";
connection = new MySqlConnection(connStringName);

cmd.CommandText = "select name from peer_review_info where active_status=1";
cmd.Connection = connection;
connection.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
ListItem item = new ListItem();
item.Text = sdr["peerrevid"].ToString();
item.Value = sdr["peerrevid"].ToString();
item.Selected = Convert.ToBoolean(sdr["IsSelected"]);
chkPeerRev.Items.Add(item);
}
}
connection.Close();
}

嗯,实际上它需要更多的改变; connection 需要一个 using非常不清楚 cmd 在哪里定义,但这也需要一个 using 并且不应共享(它的范围应仅限于此方法)。我会重写为:

private void PeerReview()
{
string connStringName = SomethingExternal.GetConnectionString();

using(var connection = new MySqlConnection(connStringName))
using(var cmd = connection.CreateCommand())
{
cmd.CommandText =
"select name from peer_review_info where active_status=1";
connection.Open();
using (var sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
ListItem item = new ListItem();
item.Text = sdr["peerrevid"].ToString();
item.Value = sdr["peerrevid"].ToString();
item.Selected = Convert.ToBoolean(sdr["IsSelected"]);
chkPeerRev.Items.Add(item);
}
}
}
}

关于c# - 获取 CS1518 : Expected class, 委托(delegate)、枚举、接口(interface)或结构错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12975155/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com