2010-04-07 4 views
0

Ma commande SqlDataSource select est dynamiquement modifiée par la fonctionnalité String.Format de la syntaxe de liaison de données unidirectionnelle Eval. Cela fonctionne bien. Cependant, je dois rassembler deux valeurs de colonnes avec un espace au milieu (ItemType + '""' + ItemDescription As ItemInfo) mais je ne peux pas obtenir la syntaxe correcte quand j'obtiens le message: "La balise de serveur n'est pas bien formée "syntaxe dans la commande de sélection sqldatasource

Pouvez-vous aider? Un grand merci

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:conn %>" SelectCommand='<%# Eval("TypeID", "SELECT ItemID, ItemType, ItemType + '" "' + ItemDescription As ItemInfo WHERE ItemType = {0}")%>'> </asp:SqlDataSource>

Répondre

0

Il pourrait être un problème plus général "

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
     ConnectionString="<%$ConnectionStrings:conn %>" 
     SelectCommand='<%# Eval(&quot;TypeID&quot;, &quot;SELECT ItemID, ItemType, ItemType + &quot;\" \"&quot; + ItemDescription As ItemInfo WHERE ItemType = {0}&quot;)%>'> 
</asp:SqlDataSource> 
+0

désolé, cela ne fonctionne pas – netNewbi3

+0

alors son pas une « question, est un" » – Nix

+0

merci beaucoup, mais ne fonctionne pas – netNewbi3

0

HII a résolu le problème de cette façon (comme conseillé dans How to use Single Quotes in Eval Format String)

En items.aspx.vb

Protected Const SqlQuery As String = "SELECT ItemID, ItemType, ItemType + " + "' '" + " ItemDescription As ItemInfo WHERE ItemType = {0}"

En items.aspx

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:conn %>" SelectCommand='<%# Eval("TypeID", SQLQuery)%>'> </asp:SqlDataSource>

Un grand merci

Questions connexes