Bonjour
Je débute avec Linq to Dataset et je rencontre un probleme avec les valeurs null et les types de données int32.

Voici les caractéristiques de mon projet :
- Visual studio 2010 express
- Langage visual basic
- Base access2007

si j'écris la requete Linq suivante pas de probleme j'ai bien ma liste d'articles qui s'affiche :

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
22
23
Public Class Form1
 
    Private ds As New LocDataSet
    Private taArticles As New LocDataSetTableAdapters.ArticlesTableAdapter
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        taArticles.Fill(ds.Articles)
 
        Dim daArticles As DataTable = ds.Tables("Articles")
 
        Dim query = From art In daArticles.AsEnumerable() _
            Select New With _
                   { _
                        .id = art.Field(Of Int32)("IdArticle"), _
                        .code = art.Field(Of String)("CodeArticle"), _
                        .modèle = art.Field(Of String)("Modèle") _
                   }
 
        Me.DataGridView1.DataSource = query.ToList
 
 
    End Sub
End Class




Par contre si dans le Select j'ajoute :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
.....
           .modèle = art.Field(Of String)("Modèle"), _
                        .idFamille = art.Field(Of Int32)("IdFamille") _
                   }
                  ......
Dans ce cas, la requete me renvoie aucun enregistrement et ma liste est vide !
Car (je penses) il y a des des enregistrements qui ont comme valeur de champ IdFamille=null (la base accepte les valuer nulle pour ce champ)

Effectivement, si je remplis le champ IdFamille pour tous les enregistrements alors la requete me retourne bien les valeurs demandées.


comment faire faire pour afficher les champs int32 avec des valeurs nulles ?

Merci de vos reponses car j'en peux plus de chercher