在VB.NET中,我为来自任何数据源(例如DataReader或IReader或集合等)的数据绑定gridviews/dropdownlists /等创建了2个简写函数:VB.NET to C#:在对象上使用数据绑定方法
Public Shared Sub BindObject(ByVal objDataSource As Object, ByVal objItem As Object)
objItem.DataSource = objDataSource
objItem.DataBind()
End Sub
Public Shared Sub BindObject(ByVal objDataSource As Object, ByVal objItem As Object, ByVal sTextField As String, ByVal sValueField As String)
objItem.DataSource = objDataSource
If sTextField <> "" Then objItem.DataTextField = sTextField
If sValueField <> "" Then objItem.DataValueField = sValueField
objItem.DataBind()
End Sub
我转换这对C#这样:
public static void BindObject(object objDataSource, object objItem)
{
objItem.DataSource = objDataSource;
objItem.DataBind();
}
public static void BindObject(object objDataSource, object objItem, string sTextField, string sValueField)
{
objItem.DataSource = objDataSource;
if (!string.IsNullOrEmpty(sTextField))
objItem.DataTextField = sTextField;
if (!string.IsNullOrEmpty(sValueField))
objItem.DataValueField = sValueField;
objItem.DataBind();
}
然而,这显然是行不通的数据绑定方法不objItem访问,除非我明确地将其转换为一个类型如“ListBox”或“Gridview”等,同样我想保留灵活性,可以是IReader,iCollection等。
是否有可能在C#中使用匿名方法或类似方法复制VB.NET方法?
谢谢。
我可能只是决定添加一个VB类库,尽管它似乎有点矫枉过正为了一个功能 – Peter