Dans VB.NET, j'ai créé deux fonctions abrégées pour la liaison de données gridviews/dropdownlists/etc à partir de n'importe quelle source de données (DataReader ou IReader ou collection, etc.):VB.NET vers C#: Utilisation des méthodes de liaison de données sur l'objet
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
Je converti ce à C# en tant que tel:
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();
}
cela ne signifie évidemment pas pourtant travailler les méthodes de liaison de données ne sont pas accessibles à objItem, à moins que je jetai à un explicity tapez comme "ListBox" ou "Gridview", etc. De même, je veux de conserver la flexibilité objDataSource peut être soit un iReader, ICollection, etc.
Est-il possible de reproduire l'approche VB.NET en C# en utilisant des méthodes anonymes ou quelque chose de similaire?
Merci.
Je peux juste décider d'ajouter une bibliothèque de classe VB, bien qu'il semble être un peu exagéré pour le plaisir d'une fonction – Peter