Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’objet DataSet fournit trois événements : Disposed, Initializedet MergeFailed.
Événement MergeFailed
L’événement le plus couramment utilisé de l’objet DataSet est MergeFailed, qui est déclenché lorsque le schéma des DataSet objets fusionnés est en conflit. Cela se produit lorsqu’une cible et une source DataRow ont la même valeur de clé primaire et que la propriété EnforceConstraints est définie sur true. Par exemple, si les colonnes clés primaires d’une table fusionnée sont identiques entre les tables des deux DataSet objets, une exception est levée et l’événement MergeFailed est déclenché. L’objet MergeFailedEventArgs passé à l’événement MergeFailed a une Conflict propriété qui identifie le conflit entre les deux DataSet objets et une Table propriété qui identifie le nom de la table en conflit.
Le fragment de code suivant montre comment ajouter un gestionnaire d’événements pour l’événement MergeFailed .
AddHandler workDS.MergeFailed, New MergeFailedEventHandler( _
AddressOf DataSetMergeFailed)
Private Shared Sub DataSetMergeFailed( _
sender As Object,args As MergeFailedEventArgs)
Console.WriteLine("Merge failed for table " & args.Table.TableName)
Console.WriteLine("Conflict = " & args.Conflict)
End Sub
workDS.MergeFailed += new MergeFailedEventHandler(DataSetMergeFailed);
private static void DataSetMergeFailed(
object sender, MergeFailedEventArgs args)
{
Console.WriteLine("Merge failed for table " + args.Table.TableName);
Console.WriteLine("Conflict = " + args.Conflict);
}
Événement initialisé
L’événement Initialized se produit après que le DataSet constructeur initialise une nouvelle instance du DataSet.
La IsInitialized propriété retourne true si l’initialisation DataSet est terminée ; sinon, elle retourne false. La BeginInit méthode, qui commence l’initialisation d’un DataSet, définit IsInitialized sur false. La EndInit méthode, qui met fin à l’initialisation du DataSet, la définit sur true. Ces méthodes sont utilisées par l’environnement de conception Visual Studio pour initialiser un DataSet élément utilisé par un autre composant. Vous ne les utiliserez généralement pas dans votre code.
Événement Disposed
DataSet est dérivé de la MarshalByValueComponent classe, qui expose à la fois la Dispose méthode et l’événement Disposed . L’événement Disposed ajoute un gestionnaire d’événements pour écouter l’événement libéré sur le composant. Vous pouvez utiliser l’événement d’un Disposed si vous souhaitez exécuter du DataSet code lorsque la Dispose méthode est appelée.
Dispose libère les ressources utilisées par le MarshalByValueComponent.
Remarque
Les objets DataSet et DataTable héritent de MarshalByValueComponent et prennent en charge l’interface ISerializable pour la communication à distance. Il s’agit des seuls objets ADO.NET qui peuvent être distants. Pour plus d’informations, consultez .NET Remoting.
Pour plus d’informations sur les autres événements disponibles lors de l’utilisation d’un DataSet, consultez Gestion des événements DataTable et gestion des événements DataAdapter.