Maison >développement back-end >C++ >Comment convertir INT en chaîne en linq en requêtes entités?

Comment convertir INT en chaîne en linq en requêtes entités?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-25 18:26:10759parcourir

How to Convert Int to String in LINQ to Entities Queries?

Dans la requête Linq to Entities, l'entier est converti en une chaîne: enquête et solution de problème

Lorsque vous essayez de convertir un entier en une chaîne dans la requête LINQ en entités, une erreur peut être rencontrée. Ce problème est principalement dû au fait que la conversion de type implicite n'est pas prise en charge.

dans le premier fragment de code:

Le compilateur invitera une erreur car il ne peut pas convertir le ControlId entier caché en valeur de chaîne.
<code class="language-csharp">var items = from c in contacts
            select new ListItem
            {
                Value = c.ContactId, //无法将类型“int”(ContactId)隐式转换为类型“string”(Value)。
                Text = c.Name
            };</code>

toString () a explicitement converti un entier en une chaîne en linq en entités à échouer:

Solution:
<code class="language-csharp">var items = from c in contacts
            select new ListItem
            {
                Value = c.ContactId.ToString(), //抛出异常:ToString 在 linq to entities 中不受支持。
                Text = c.Name
            };</code>

Afin de résoudre ce problème, vous pouvez utiliser les fonctions sqlfunctions.stringConvert dans EF v4. Cependant, comme il n'y a pas de charge entier, vous pouvez d'abord le convertir en un numéro de point flottant à double provision ou un numéro décimal:

Cette méthode convertit avec succès l'entier contalide en une chaîne et vous permet de continuer la requête 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn