C# 返回类型数组
大家好,我是C#编程新手,在C#函数中返回数组类型时遇到问题。从查询数据库返回的值(以下代码): 因此,我的问题是:C# 返回类型数组,c#,sql,arrays,C#,Sql,Arrays,大家好,我是C#编程新手,在C#函数中返回数组类型时遇到问题。从查询数据库返回的值(以下代码): 因此,我的问题是: 我想返回类型成为数组,你能给我建议吗 如何使用上述函数,并按返回值的索引调用。如果我将这样调用(fillTreeLesson是我将使用的函数名): treeOutline.Nodes[counter_node].Nodes.Add(fillTreeLesson(课程名称)) 感谢您的关注您可以使用以下列表轻松完成: public List<string> FillTr
感谢您的关注您可以使用以下列表轻松完成:
public List<string> FillTreeLesson(string course_id)
{
List<string> returnList = new List<string>();
try
{
con.Open();
MySqlCommand cmnd = con.CreateCommand();
string sql = "select name from lesson where course like '%"+course_id+"%'";
cmnd.CommandText = sql;
MySqlDataReader reader = cmnd.ExecuteReader();
while (reader.Read())
{
lesson_name = reader.GetString("name");
returnList.Add(lesson_name);
}
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return returnList;
}
之后,您可以使用
foreach循环:
或
您可以使用for循环(如果您想在某些情况下使用它们,最好是这样)
使用其索引值订购,或以后必须更改其值
上)
for(int i=0;iIt)如果你能发布完整的方法,那真的会很有帮助-我们看不到方法或lesson\u name的声明
。放弃第二个问题或单独发布。在帖子中以清晰的方式提问一个问题(我以前也违反过,所以没什么好担心的——把你的第二个问题改成新问题(以防你在这里找不到)好的@TalhaIrfan,谢谢你的建议,我将单独回答这个问题。@JonSkeet lesson_name在这些类中声明为全局的。我已经更新了更完整的方法。谢谢你的关注数组将从何而来,或者为什么lesson_name
是一个实例变量。你还应该查看using
语句,更好的异常处理,遵循.NET命名约定,并使用参数化SQL…@Emil请参见更新的答案
public List<string> FillTreeLesson(string course_id)
{
List<string> returnList = new List<string>();
try
{
con.Open();
MySqlCommand cmnd = con.CreateCommand();
string sql = "select name from lesson where course like '%"+course_id+"%'";
cmnd.CommandText = sql;
MySqlDataReader reader = cmnd.ExecuteReader();
while (reader.Read())
{
lesson_name = reader.GetString("name");
returnList.Add(lesson_name);
}
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return returnList;
}
List<string> namesList = new List<string>();
namesList = FillTreeLesson("CS-502");
foreach(string currentName in namesList)
{
//Whatever you want to do with currentName
}
for(int i=0; i<namesList.Count; i++)
{
//Your code. You should access given element as namesList[i]
}