Dans Linq en entités, le programmeur peut rencontrer des difficultés lorsque vous essayez de convertir l'entier dans la requête en une chaîne. La conversion peut provoquer des erreurs, comme indiqué dans l'exemple suivant:
Une autre méthode consiste à utiliser la méthode toString (), qui semble être une solution réalisable:
var items = from c in contacts select new ListItem { Value = c.ContactId, // 无法隐式转换类型“int”(ContactId)到“string”(Value)。 Text = c.Name };
Cependant, cette tentative échouera également, car Linq aux entités ne prend pas en charge ToString (), qui générera des anomalies.
var items = from c in contacts select new ListItem { Value = c.ContactId.ToString(), // 抛出异常:LINQ to Entities 不支持 ToString()。 Text = c.Name };
EF V4 résout ce problème de conversion via la méthode sqlfunctions.stringConvert. Cette méthode fournit un mécanisme qui convertit la valeur en une chaîne, sans conversion explicite. Le code suivant démontre son utilisation:
En convertissant entier en double précision dans le paramètre StringConvert (), l'entier peut être converti avec succès en chaîne dans LINQ en entités.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!