在数据行函数中包装代码

时间:2012-04-19 13:00:31

标签: asp.net .net vb.net

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

            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(item,msg,bttext,url))

希望我不要太混淆:)。

1 个答案:

答案 0 :(得分: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