2012-04-19 30 views
0

我有以下代码,它将值分配给数据行并添加到数据表中。我想写的函数返回一个datarow,使我能够编写更少的代码。请检查以下代码并提供任何建议将代码包装到数据行功能中

  objRow = dtTODO.NewRow 
      objRow.Item("Item") = "Test" 
      objRow.Item("Message") = "Test" 
      objRow.Item("ButtonText") = "Add" 
      dtTODO.Rows.Add(objRow) 

      objRow = dtTODO.NewRow 
      objRow.Item("Item") = "Test2" 
      objRow.Item("Message") = "Test2" 
      objRow.Item("ButtonText") = "Add" 
      dtTODO.Rows.Add(objRow) 

假设我正在添加上述记录。我想创建一个函数返回一个数据行作为,

Public Function ItemRow(ByVal strItem As String, ByVal strMessage As String, ByVal strButtonText As String, ByVal strUrl As String) As DataRow 

End Function 

并把这个作为,

dtTODO.Rows.Add(ItemRow(项目,味精,bttext,URL))

希望我不太困惑:)。

+0

你几乎已经有了自己的答案。 – 2012-04-19 13:16:30

回答

0

您的函数签名似乎只是没问题您必须将dtTODO.Newrow引用也传递给该函数。

试试这个:

AddRow("a", "b", "c", dtTODO); 
AddRow("a", "b", "c", dtTODO); 

void AddRow(string str1, string str2, string str3, DataTable dt) 
{ 
     DataRow objRow = dtTODO.NewRow(); 
     objRow["Item"] = str1; 
     objRow["Message"] = str2; 
     objRow["ButtonText"] = str3; 
     dt.Rows.Add(objRow); 
} 

您可以得到更好的代码。

请转换上面的代码到VB

+0

你能举个例子来解释我吗? – Joshua 2012-04-19 13:29:15

+0

我修改了我的答案 – 2012-04-19 13:47:32