Datarow
の行を自分のコードに使用します。私のdatarowには、ストアドプロシージャから来る値がありますか?以下のコードを参照してくださいストアドプロシージャのデータローを呼び出すことができません
public void SendMail()
{
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"].ToString()))
{
SqlCommand cmd = new SqlCommand("GET_INWARD_REMINDER_REPORT", conn);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
da.Fill(ds);
foreach (DataRow dr in ds.Tables[0].Rows)
{
if (dr["UserEmail"].ToString() == "10000")
{
string StrPriBody = "Dear " + dr.Rows[i]["UserName"].ToString() + ", <br /><br /> "+
"This is a test mail for reminder. " +
string StrPriBody = "Dear " + dr.Rows[i]["name"].ToString() + ", <br /><br /> " + } } }
しかし、私はその行を使用することができません。
私はこの
string StrPriBody = "Dear " + dr.Rows[i]["UserName"].ToString() + ", <br /><br /> "+
ようにしようとしたが、
system.data.datarowが行 '
」の定義が含まれていません' とRows
で、私はエラーを取得していますだからこれに対処する方法。
ものDataRowのスクリーンショットを参照
'dr'オブジェクトには1行が含まれているため、直接列を使用できます。 dr ["UserName"]のように。ToString() –
これはかなり自明ですが、行はdatarowのプロパティではありません。あなたはUserEmailを読んでいる - フィールドUserNameと名前のためにそれを正しく使用する。 – Esko
@KaushikMaheta:しかし、それはそれぞれの行を割り当てて読み上げるでしょう。 ??? – BNN