2009-04-09 6 views
1

J'ai une source de données SQL et j'ai une très longue chaîne de SQL. Je veux mettre des sauts de ligne dans mon sql mais Visual Studio ne semble pas aimer les sauts de ligne. Comment pourrais-je mettre dans les sauts de ligne?Comment ajouter des sauts de ligne à une propriété dans une déclaration de contrôle ASP.NET?

Exemple

<asp:SqlDataSource ID="SqlDataSource1" runat="server"   
     ProviderName="System.Data.SqlClient" 
     SelectCommand="select aci.ACIOI, aci.AccountNum, (select count(r.OI) from Report r where aci.ACIOI = r.ACIOI) as ReportCount, ci.Name, aci.BusinessName, ci.[Address] As StreetAddress, ci.Town, ci.Zip, ci.Phone from AdditionalCustomerInformation aci left join CustomerInformation ci on ci.ACI_OI = aci.ACIOI where (select count(r.OI) from Report r where aci.ACIOI = r.ACIOI) >= 1" 
     >   
     </asp:SqlDataSource> 

Répondre

3

Cette compile très bien pour moi:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ProviderName="System.Data.SqlClient" SelectCommand="select aci.ACIOI, 
aci.AccountNum, (select count(r.OI) from Report r where aci.ACIOI = r.ACIOI) as ReportCount, 
ci.Name, aci.BusinessName, 
ci.[Address] As StreetAddress, ci.Town, 
ci.Zip, ci.Phone 
from AdditionalCustomerInformation aci left join CustomerInformation ci on ci.ACI_OI = aci.ACIOI 
where (select count(r.OI) from Report r where aci.ACIOI = r.ACIOI) >=1"> </asp:SqlDataSource> 

... ce qui est logique. Le compilateur ne devrait pas se soucier si votre balisage est séparé en lignes séparées tant que l'instruction SQL entière est placée entre guillemets de la propriété SelectCommand.

Le problème est dû au symbole > dans votre instruction SQL. Il existe deux façons d'échapper à ce symbole. Vous pouvez simplement utiliser la place entité HTML &gt;, comme suit:

SelectCommand = "SELECT.... &gt;= 1" 
+0

SelectCommand = @ "SELECT ..." n'est pas valide dans le balisage ASP.NET – Greg

+0

Ahh, merci pour la tête haute. Je me rappelle avoir lu que cela fonctionne déjà. – Cerebrus

+0

FYI - Le @ dans votre dernier exemple est toujours là. – Greg

1

Évasion HTML est nécessaire. Remplacez votre> par & gt; De même, < devient & lt;

Questions connexes