2009-09-10 8 views
0

J'ai ajouté une table (ViolationsDataSourceConfig) au fichier dbml.LinQ Query help

Le nom de contexte est ViolationsDataContext.

J'essaye d'écrire une fonction qui devrait renvoyer l'objet employé mais il lance des erreurs. Voici le code. Y a-t-il un moyen facile d'y parvenir? Je veux juste le ViolationsDataSourceConfig.

Public Shared Function GetDataSourceDetails(ByVal ApplicationID As Integer) As ViolationsDataSourceConfig 
     Dim _db As New ViolationsDataContext 
     Dim appSource As New ViolationsDataSourceConfig 
     Dim application As Table(Of ViolationsDataSourceConfig) = _db.GetTable(Of ViolationsDataSourceConfig)() 
     Try 
      appSource = From a In application Where a.ApplicationID = ApplicationID And a.Status = 1 _ 
         Select a 
        Catch ex As Exception 
        End Try 
     Return appSource 
    End Function 
+0

Quelles erreurs sont jetés? –

+0

Impossible de convertir l'objet de type 'System.Data.Linq.DataQuery en ViolationsDataSourceConfig – acadia

Répondre

2

C'est un peu difficile sans plus d'informations concernant vos structures de données ou les erreurs que vous obtenez, pourriez-vous fournir l'erreur au moins?

En outre, vous dites que votre instruction LINQ doit "renvoyer l'employé" mais que vous le tapez "ViolationsDataSourceConfig", comment cela fonctionne-t-il?

Ma première pensée serait que l'instruction LINQ retournera un IEnumerable par défaut, donc ce ne sera probablement pas le bon type.

ppSource = (From a In application Where a.ApplicationID = ApplicationID And a.Status = 1 _ 
      Select a).FirstOrDefault() 

pourrait être plus proche de votre objectif ...