try
{
string[] sql = new string[1];
clsGlb.logToFile(\"dgvItmInv.Columns[e.ColumnIndex].Name = \" + dgvItmInv.Columns[e.ColumnIndex].Name + \" value: \" + dgvItmInv[e.ColumnIndex, e.RowIndex].Value);
sql[0] = \"UPDATE tblItmInv SET invAmt = \" + dgvItmInv[\"invAmt\", e.RowIndex].Value.ToString().Replace(',', '.') + \", lstUpdateBy = \" + clsGlb.usrRid + \", \";
sql[0] += \"lstUpdateOn = '\" + clsGlb.getDtTmStr(DateTime.Now) + \"' \";
sql[0] += \" WHERE itmRef = \" + dgvItmInv[\"itmRef\", e.RowIndex].Value.ToString();
clsGlb.execSqlStmntsNonQuery(sql, clsGlb.sqlConnEERP);
sql[0] = \"SELECT invAmt, fullName, lstUpdateOn FROM tblItmInv ii INNER JOIN tblUser u ON ii.lstUpdateBy = u.rid\";
sql[0] += \" WHERE itmRef = \" + dgvItmInv[\"itmRef\", e.RowIndex].Value.ToString();
sql[0] += \" AND rid = \" + clsGlb.usrRid +\"\";
dtUpdt = clsGlb.execSqlStmntReader(sql[0], clsGlb.sqlConnEERP);
dgvItmInv[\"invAmt\", e.RowIndex].Value = dtUpdt.Rows[\"invAmt\"].ToString();
dgvItmInv[\"lstUpdateBy\", e.RowIndex].Value = dtUpdt.Rows[\"fullName\"].ToString();
dgvItmInv[\"lstUpdateOn\", e.RowIndex].Value = dtUpdt.Rows[\"lstUpdateOn\"].ToString();
böyle bir kod bloğum var ve kalın yazılmış olan kısmın altını kırmızı ile çiziyor ve \"Argument 1: cannot convert from 'string' to 'int' ve Error 3 The best overloaded method match for 'System.Data.DataRowCollection.this[int]' has some invalid arguments \" şeklinde iki adet hata veriyor sebebi ne olabilir bunun veri türünü çevirmeyle ilgili bir hata olduğunu anlıyorum ama ne yapacağımı bilemiyorum yardımcı olursanız sevinirim.
","headline":"Gridview Sütununa veri aktarmak","mainEntity":{"@type":"Question","name":"Gridview Sütununa veri aktarmak","url":"https://uzmanim.net/soru/gridview-sutununa-veri-aktarmak/3282","author":{"@type":"Person","name":"natsudragneel"},"comment":[],"commentCount":0,"dateCreated":"2014-03-31T16:21:33.72+03:00","dateModified":"2014-03-31T18:28:35.53+03:00","datePublished":"2014-03-31T16:21:33.72+03:00","keywords":["c#","datagridview","sql","tablo"],"publisher":{"@type":"Organization","name":"uzmanim.net","url":"https://uzmanim.net"},"text":"
DataTable dtUpdt = new DataTable();
try
{
string[] sql = new string[1];
clsGlb.logToFile(\"dgvItmInv.Columns[e.ColumnIndex].Name = \" + dgvItmInv.Columns[e.ColumnIndex].Name + \" value: \" + dgvItmInv[e.ColumnIndex, e.RowIndex].Value);
sql[0] = \"UPDATE tblItmInv SET invAmt = \" + dgvItmInv[\"invAmt\", e.RowIndex].Value.ToString().Replace(',', '.') + \", lstUpdateBy = \" + clsGlb.usrRid + \", \";
sql[0] += \"lstUpdateOn = '\" + clsGlb.getDtTmStr(DateTime.Now) + \"' \";
sql[0] += \" WHERE itmRef = \" + dgvItmInv[\"itmRef\", e.RowIndex].Value.ToString();
clsGlb.execSqlStmntsNonQuery(sql, clsGlb.sqlConnEERP);
sql[0] = \"SELECT invAmt, fullName, lstUpdateOn FROM tblItmInv ii INNER JOIN tblUser u ON ii.lstUpdateBy = u.rid\";
sql[0] += \" WHERE itmRef = \" + dgvItmInv[\"itmRef\", e.RowIndex].Value.ToString();
sql[0] += \" AND rid = \" + clsGlb.usrRid +\"\";
dtUpdt = clsGlb.execSqlStmntReader(sql[0], clsGlb.sqlConnEERP);
dgvItmInv[\"invAmt\", e.RowIndex].Value = dtUpdt.Rows[\"invAmt\"].ToString();
dgvItmInv[\"lstUpdateBy\", e.RowIndex].Value = dtUpdt.Rows[\"fullName\"].ToString();
dgvItmInv[\"lstUpdateOn\", e.RowIndex].Value = dtUpdt.Rows[\"lstUpdateOn\"].ToString();
böyle bir kod bloğum var ve kalın yazılmış olan kısmın altını kırmızı ile çiziyor ve \"Argument 1: cannot convert from 'string' to 'int' ve Error 3 The best overloaded method match for 'System.Data.DataRowCollection.this[int]' has some invalid arguments \" şeklinde iki adet hata veriyor sebebi ne olabilir bunun veri türünü çevirmeyle ilgili bir hata olduğunu anlıyorum ama ne yapacağımı bilemiyorum yardımcı olursanız sevinirim.
","answerCount":1,"suggestedAnswer":{"@type":"Answer","name":"
DataTable.Rows[Index]
Rows int değeri alır. Yani siz oraya ancak Index numarasını yazabilirsiniz. dtUpdt.Rows[1] gibi.
","url":"https://uzmanim.net/soru/gridview-sutununa-veri-aktarmak/3282#a3286","author":{"@type":"Person","name":"cemkara"},"comment":[{"@type":"Comment","name":"Cevabınız için teşekkür ederim çok yardımcı oldu.","author":{"@type":"Person","name":"natsudragneel"},"text":"Cevabınız için teşekkür ederim çok yardımcı oldu."},{"@type":"Comment","name":"Rica ederim, sol tarafta bulunan cevap olarak kabul eti tıklarsanız sevinirim.","author":{"@type":"Person","name":"cemkara"},"text":"Rica ederim, sol tarafta bulunan cevap olarak kabul eti tıklarsanız sevinirim."}],"commentCount":2,"dateCreated":"2014-03-31T18:28:35.517+03:00","dateModified":"2014-03-31T18:28:35.517+03:00","text":"DataTable.Rows[Index]
Rows int değeri alır. Yani siz oraya ancak Index numarasını yazabilirsiniz. dtUpdt.Rows[1] gibi.
","upvoteCount":0},"upvoteCount":1}} DataTable dtUpdt = new DataTable();
try
{
string[] sql = new string[1];
clsGlb.logToFile("dgvItmInv.Columns[e.ColumnIndex].Name = " + dgvItmInv.Columns[e.ColumnIndex].Name + " value: " + dgvItmInv[e.ColumnIndex, e.RowIndex].Value);
sql[0] = "UPDATE tblItmInv SET invAmt = " + dgvItmInv["invAmt", e.RowIndex].Value.ToString().Replace(',', '.') + ", lstUpdateBy = " + clsGlb.usrRid + ", ";
sql[0] += "lstUpdateOn = '" + clsGlb.getDtTmStr(DateTime.Now) + "' ";
sql[0] += " WHERE itmRef = " + dgvItmInv["itmRef", e.RowIndex].Value.ToString();
clsGlb.execSqlStmntsNonQuery(sql, clsGlb.sqlConnEERP);
sql[0] = "SELECT invAmt, fullName, lstUpdateOn FROM tblItmInv ii INNER JOIN tblUser u ON ii.lstUpdateBy = u.rid";
sql[0] += " WHERE itmRef = " + dgvItmInv["itmRef", e.RowIndex].Value.ToString();
sql[0] += " AND rid = " + clsGlb.usrRid +"";
dtUpdt = clsGlb.execSqlStmntReader(sql[0], clsGlb.sqlConnEERP);
dgvItmInv["invAmt", e.RowIndex].Value = dtUpdt.Rows["invAmt"].ToString();
dgvItmInv["lstUpdateBy", e.RowIndex].Value = dtUpdt.Rows["fullName"].ToString();
dgvItmInv["lstUpdateOn", e.RowIndex].Value = dtUpdt.Rows["lstUpdateOn"].ToString();
böyle bir kod bloğum var ve kalın yazılmış olan kısmın altını kırmızı ile çiziyor ve "Argument 1: cannot convert from 'string' to 'int' ve Error 3 The best overloaded method match for 'System.Data.DataRowCollection.this[int]' has some invalid arguments " şeklinde iki adet hata veriyor sebebi ne olabilir bunun veri türünü çevirmeyle ilgili bir hata olduğunu anlıyorum ama ne yapacağımı bilemiyorum yardımcı olursanız sevinirim.
Toplam 1 cevap
DataTable.Rows[Index]
Rows int değeri alır. Yani siz oraya ancak Index numarasını yazabilirsiniz. dtUpdt.Rows[1] gibi.
natsudragneel 10 yıl önce
Cevabınız için teşekkür ederim çok yardımcı oldu.
cemkara 10 yıl önce
Rica ederim, sol tarafta bulunan cevap olarak kabul eti tıklarsanız sevinirim.