テーブル内のすべてのデータを一覧表示しようとしていますが、最初の行のみが返され、テーブル全体がループされません。ASMX Web サービスで使用するため、データを文字列として返す必要があります。
そしてxmlスキーマは最初の行のみを返します
<String> data in row 1<String>
次のようなものを返したい:
<String> data in row 1<String>
<String> data in row 2<String>
<String> data in row 3<String>
そして1行目からn行目まで……。
VS2012 クエリ ビルダーで sql ステートメントをテストしましたが、問題なく動作します。だから私は方法ですべてのデータをリストする必要があります。
これが私のコードです
public String finAllCompaniesForSpesficuserByUserId(String userid)
{
List<String> l = new List<String>();
try
{
String sql = "SELECT Companies.Name FROM UsersInCompanies INNER JOIN Companies ON UsersInCompanies.CompanyId = Companies.CompanyId WHERE UsersInCompanies.UserId ='" + userid + "'";
con = new SqlConnection(cs);
cmd = new SqlCommand(sql, con);
DataTable table = new DataTable();
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(table);
con.Open();
dr = cmd.ExecuteReader();
dr.Read();
//while (dr.Read())
//{
// l.Add(dr["Name"].ToString());
//}
foreach (DataRow row in table.Rows)
{
return row["Name"].ToString();
}
}
finally
{
if (con != null)
con.Close();
}
/*
foreach (string p in l)
{
return p;
}
*/
return null;
}
誰かが私を正しい方向に向けたり、例を挙げたりできますか?