IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[VS2005][VB.NET] Dataset Typé et relations.


Sujet :

Windows Forms

  1. #1
    Membre averti
    Avatar de Cyrilange
    Profil pro
    Inscrit en
    Février 2004
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 268
    Points : 338
    Points
    338
    Par défaut [VS2005][VB.NET] Dataset Typé et relations.
    Voici le problème :

    • 2 Datatable : Clients et ContactsClients
    • 1 relation entre ces 2 tables : FK_Clients_ClientsContacts
    • 2 datagridview
    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    PublicClass FormTest
    Dim ClientsBindingSource AsNew BindingSource
    Dim ContactsBindingSource AsNew BindingSource
     
    PrivateSub FormTest_Load(ByVal sender AsObject, ByVal e As System.EventArgs) HandlesMe.Load
    Dim ds AsNew dbSolberProspectionDataSet
    Dim daClients AsNew dbSolberProspectionDataSetTableAdapters.ClientsTableAdapter
    Dim daContacts AsNew dbSolberProspectionDataSetTableAdapters.ClientsContactsTableAdapter
    daClients.Fill(ds.Clients)
    daContacts.Fill(ds.ClientsContacts)
     
    ClientsBindingSource.DataSource = ds
    ClientsBindingSource.DataMember = ds.Clients.TableName
    ContactsBindingSource.DataSource = ClientsBindingSource.DataSource
    ContactsBindingSource.DataMember = "FK_Clients_ClientsContacts"
    dgvMaster.DataSource = ClientsBindingSource
    dgvChild.DataSource = ContactsBindingSource
    EndSub
    EndClass
    
    D'après les exemples que j'ai trouvé ce code devrait parfaitement fonctionner et pourtant j'obtien le message d'erreur suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    La propriété DataMember 'FK_Clients_ClientsContacts' est introuvable dans le DataSource.
    J'ai également essayé la 2eme méthode sans succés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ClientsBindingSource.DataSource = ds.Clients
    ContactsBindingSource.DataSource = ClientsBindingSource.DataSource
    ContactsBindingSource.DataMember = "FK_Clients_ClientsContacts"
    Merci de votre aide.

  2. #2
    Membre averti
    Avatar de Cyrilange
    Profil pro
    Inscrit en
    Février 2004
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 268
    Points : 338
    Points
    338
    Par défaut
    Pour vérifier que ma relation existe bien j'ai mis ce bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim text As String
    ForEach item As DataRelation In ds.Clients.ChildRelations
    text += item.ToString & vbCrLf
    Next
    MsgBox(text)
    
    Et j'obtiens bien "FK_Clients_ClientsContacts". Pourquoi n'arrive-t-il pas à voir cette relation dans la propriété DataMember ?

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/01/2007, 10h44
  2. Réponses: 18
    Dernier message: 14/12/2006, 09h10
  3. [ADO.NET] Fenêtre Relation d'un DataSet Typé
    Par daner06 dans le forum Accès aux données
    Réponses: 3
    Dernier message: 01/09/2006, 18h21
  4. [ADO.NET][C#]Comment forcer Fill correct de DataSet typé ?
    Par Manralf dans le forum Accès aux données
    Réponses: 23
    Dernier message: 21/02/2006, 09h50
  5. [VS2005][C#] Delete sur un Dataset typé
    Par Xno dans le forum Windows Forms
    Réponses: 3
    Dernier message: 19/09/2005, 18h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo