繁体   English   中英

循环内的c#循环

[英]c# loop within a loop

我目前正在使用DataSets在C#服务中带回结果,现在我需要更改以遍历初始数据集并从该结果中带回一部分数据。

因此,我需要使用标识符遍历这些结果,然后在每个结果下方的嵌套中显示另一组结果。 使用有限的C#知识,似乎无法使用数据集来实现这一点。

EG>遍历数据库,对于DB中的每个结果,遍历另一个表。

[WebMethod(BufferResponse=true,Description="Viewing Things")] 
public DataSet MyFunctionIs (int IDtoQuery) 
{ 
  MySqlConnection dbConnection = new   MySqlConnection("server=na;uid=na;pwd=na;database=na;");
  MySqlDataAdapter objCommand = new MySqlDataAdapter("SELECT STATEMENT HERE;", dbConnection);
  DataSet DS = new DataSet(); 
  objCommand.Fill(DS,"MyFunctionIs");
}

但是,即使使用联接也无法实现。我需要查询由此返回的每一行,并为XML响应返回一个子数据集。

通常,您可以使用连接多个表并仅返回一组行的SQL查询来解决此类问题。 这使您大致了解如何尝试执行此操作:

string ConnectionString = "server=myserver;uid=sa;pwd=secret;database=mydatabase";
using (var con = new SqlConnection(ConnectionString)) {
    string CommandText = "SELECT p.firstname, p.lastname, o.operderdate " +
                         "FROM persons p LEFT JOIN orders o ON p.person_id = o.person_id";
    using (var cmd = new SqlCommand(CommandText, con)) {
        con.Open();
        using (var reader = cmd.ExecuteReader()) {
            while (reader.Read()) {
                Console.WriteLine("{0} {1}, {2}", reader["firstname"], reader["lastname"], reader["operderdate"]);
            }
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM