2016-04-27 4 views
-1

J'ai reçu cette exception "System.NotSupportedException" depuis un moment maintenant, je n'ai plus d'options. Je reçois cette erreur lorsque j'essaie d'accéder à la fonction findAllUsers() de mon navigateur.System.NotSupportedException

J'ai la classe modèle:

Public Class pUsers 

Public Property UserId() As Long 
Public Property Username() As String 
Public Property Password() As String 
Public Property Email() As String 
Public Property Cell() As String 
Public Property DateCreated() As Date 
Public Property LastLogin() As DateTime 

End Class 

La classe ServiceAPIserver a une fonction qui ressemble à ceci:

Public Function findAllUsers() As List(Of pUsers) Implements IServiceAPIServer.findAllUsers 
    Using mde As New AllMyAPIEntities() 
     Return mde.UserEntities.[Select](Function(ue) New pUsers() With { 
      .UserId = ue.UserId, 
      .Cell = wrapper.DecryptData(ue.Cell), 
      .DateCreated = ue.DateCreated, 
      .Email = wrapper.DecryptData(ue.Email), 
      .LastLogin = ue.LastLogin, 
      .Password = ue.Password, 
      .Username = wrapper.DecryptData(ue.Username)}).ToList() 
    End Using 
End Function 
+0

Pourquoi toutes les mauvaises balises dans votre question? –

+0

C'était parce que je ne sais pas vraiment ce qui cause l'erreur. @ bub – kilojoules88

+1

Vous n'avez pas simplement obtenu une 'NotSupportedException', vous avez une' NotSupportedException' vous indiquant exactement où le problème est. Si vous ne comprenez pas les détails, très bien, cela peut constituer une bonne question, mais si vous ne prenez même pas la peine de faire un minimum de lecture et d'essayer de comprendre, ce que vous faites ne vaut guère mieux que de vous jeter les mains dans l'air et aller "waaahhhhh !!!" – hvd

Répondre

0

Lors de l'écriture LINQ au code des entités au moment de la conception, il est LINQ donc toute la syntaxe LINQ est pris en charge. Au moment de l'exécution cependant, certaines choses ne sont pas supportées par le fournisseur sous-jacent. Plus particulièrement, votre requête LINQ doit pouvoir être convertie en code SQL pouvant être exécuté sur la base de données. Si wrapper.DecryptData est une méthode dans votre propre code VB, alors votre base de données ne sait rien à ce sujet, donc elle ne peut pas être convertie en SQL, donc elle n'est pas supportée par LINQ to Entities.