[asp.net 2] afficher ou non une zone en fonction d'un champ de bdd

afficher ou non une zone en fonction d'un champ de bdd [asp.net 2] - C#/.NET managed - Programmation

Marsh Posté le 30-05-2006 à 17:35:58    

kookoo les gens [:dawa]
 
j'ai besoin d'afficher (ou pas) une zone de texte en fonction de si un enregistrement de la bdd est vide (ou pas).
 
alors déjà je suis un gros noob en asp.net 2, je découvre, et c'est une mauvaise idée de faire un gros projet en meme temps, je trouve [:dawao] enfin bref
 
donc j'ai ce code-là :
 

Code :
  1. <asp:SqlDataSource
  2. ID="SqlDetailsMetier"
  3. runat="server"
  4. ConnectionString="<%$ ConnectionStrings:CsConn %>"
  5. SelectCommand="SELECT [metier_titre], [metier_ident], [metier_mission], [metier_activites], [metier_video], [metier_audio], [metier_pdf] FROM [me3_metier_pedago] WHERE ([metier_ident] = @metier_ident)">
  6. <SelectParameters>
  7.  <asp:QueryStringParameter Name="metier_ident" QueryStringField="metier" Type="Int32" />
  8. </SelectParameters>
  9. </asp:SqlDataSource>
  10. <asp:DataList ID="DataListDetailsMetier" runat="server" DataSourceID="SqlDetailsMetier" Width="100%">
  11. <ItemTemplate>
  12.  <h1><asp:Label ID="metier_titreLabel" runat="server" Text='<%# Eval("metier_titre" ) %>'>
  13.   </asp:Label></h1>
  14.  <h2>Mission :</h2>
  15.  <p class="accroche"><asp:Label ID="metier_missionLabel" runat="server" Text='<%# Eval("metier_mission" ) %>'>
  16.   </asp:Label></p>
  17.  <h2>Activités :</h2>
  18.  <p class="contenu"><asp:Label ID="metier_activitesLabel" runat="server" Text='<%# Eval("metier_activites" ) %>'>
  19.   </asp:Label></p>
  20.  <ul>
  21.   <li>Voir la vidéo métier</li>
  22.   <li>Ecouter le témoignage audio</li>
  23.   <li>Lire la fiche métier</li>
  24.   <li>
  25.    <asp:HyperLink ID="LienEnSavoirPlus" runat="server" NavigateUrl='<%# Eval("metier_cgi_ident", "http://www.coin.com?pouet={0}" ) %>' Target="_blank">
  26.    La rubrique métiers</asp:HyperLink></li>
  27.  </ul>
  28. </ItemTemplate>
  29. </asp:DataList>


 
 
et en fait, je voudrais afficher les éléments de liste "voir la vidéo métier" uniquement si le champ "metier_video" n'est pas vide. En asp tout court par exemple (ça je sais faire) ça donnerait un truc comme ça :
 

Code :
  1. <% if rs("metier_video" ) & "" <> "" then %>
  2. <li><a href="coin">voir la vidéo</a></li>
  3. <% end if %>


 
mais là je sais pas faire [:zytrasnif]
 
en vous remerciant [:romf]


---------------
Android/Manettes/Metroidvania/Zelda/Indés/Retrogaming/VDS jeux
Reply

Marsh Posté le 30-05-2006 à 17:35:58   

Reply

Marsh Posté le 01-06-2006 à 15:46:18    

Reply

Marsh Posté le 01-06-2006 à 15:52:08    

fait le en flash ! http://www.ifrance.com/srilragil/Images/kneu/kneudancer.gif

Reply

Marsh Posté le 01-06-2006 à 16:06:08    

Reply

Marsh Posté le 01-06-2006 à 17:01:42    

 


euh au feeling
 

Code :
  1. if (SqlDetailMetier["metier_video"]!="" )
  2. {}

 

!= "" ou essaie avec l'intellisense si tu n'as pas une méthode genre IsNotNull

Reply

Marsh Posté le 02-06-2006 à 11:17:51    

nan marche pas :o
 
 
putain ca devrait pas etre compliqué, et c'est un truc dont tout le monde a besoin, personne est capable de me répondre ? :fou:


---------------
Android/Manettes/Metroidvania/Zelda/Indés/Retrogaming/VDS jeux
Reply

Marsh Posté le 04-06-2006 à 12:04:18    

Reply

Marsh Posté le 05-06-2006 à 10:13:27    

Reply

Marsh Posté le 07-06-2006 à 13:16:08    

bon alors j'en conclus que asp.net 2 c'est tellement pourri qu'on peut meme pas faire une opération aussi basique ? [:opus dei]


---------------
Android/Manettes/Metroidvania/Zelda/Indés/Retrogaming/VDS jeux
Reply

Marsh Posté le 07-06-2006 à 13:46:33    

bah c'est tout schtroumpf suffit de mettre un schtroumpf et de schtroumpfer si le schtroumpf est schtroumpf ou pas et ça schtroumpf tout seul

Reply

Marsh Posté le 07-06-2006 à 13:46:33   

Reply

Marsh Posté le 07-06-2006 à 22:44:29    

[:natas]


Message édité par cosmoschtroumpf le 07-06-2006 à 22:55:31

---------------
Android/Manettes/Metroidvania/Zelda/Indés/Retrogaming/VDS jeux
Reply

Marsh Posté le 08-06-2006 à 11:44:41    

spacesmurf > vire moi ces <% %>, t'es pas en ASP, mais en .NET :o
 
tu refais ta page proprement, et on en reparle, là y'a pas moyen de moyenner, c'est pas débugable...

Reply

Marsh Posté le 08-06-2006 à 11:45:43    

en plus, ton champs est vide ou null ? c'est quel type ? autant d'infos essencielles pour détecter s'il est rempli ou non... string.empty != null pour info...

Reply

Marsh Posté le 08-06-2006 à 15:22:50    

Arjuna a écrit :

spacesmurf > vire moi ces <% %>, t'es pas en ASP, mais en .NET :o
tu refais ta page proprement, et on en reparle, là y'a pas moyen de moyenner, c'est pas débugable...


 
what ?
dans mon second exemple, c'était un truc que je ne fais pas ; dans mon premier exemple, c'est ce que je fais en utilisant les balises actives en mode design...
 

Arjuna a écrit :

en plus, ton champs est vide ou null ? c'est quel type ? autant d'infos essencielles pour détecter s'il est rempli ou non... string.empty != null pour info...


mon champ est null, mais peu importe, puisque je fais des .tostring() à chaque test...


---------------
Android/Manettes/Metroidvania/Zelda/Indés/Retrogaming/VDS jeux
Reply

Marsh Posté le 08-06-2006 à 16:11:05    

tostring() d'un null... c'est la fête du slip :bounce:

Reply

Marsh Posté le 08-06-2006 à 16:14:57    

ah ouais, t'es en VB.NET, ceci explique cela...
je voyais aucun cast dans ton code, et le coup du tostring qui marche sur un null :ouch:
mais ouais, en vb, z'ont pris toutes les merdes de VB, aucun de ses avantages, et ils ont mixé avec le syntaxe C#, histoire de faire un langage trisomnique : parents normaux, bébé mongolien.
 
=> del *.aspx.vb
 
et ensuie, tu crées un nouveau projet en mode C#.
au moins tu comprendras ce qu'il se passe quand t'as pas le bon résultat. là le framework est obligé de prendre des initialives, mais clairement un tostring() d'un null, je doute que ça fasse "" dans tous les cas... même le VBS n'est pas aussi débile alors qu'il n'est pas typé !


Message édité par Arjuna le 08-06-2006 à 16:15:30
Reply

Marsh Posté le 08-06-2006 à 20:04:32    

alors d'une part je peux pas le faire en c#, non seulement parce que le projet est presque fini, mais en plus parce que mon patron ne connait que le vb, et il faut qu'il puisse surveiller ce que je fais, au moins du coin de l'oeil. J'aurais préféré le faire en c# mais bon...
 
le tostring qui marche sur un null, ca me parait plutot normal. Pourquoi ça ne devrait pas marcher ? et c'est un concept .net, pas vb.net (ça marche aussi en c#, testaid).
 
Enfin, c'est pas que je comprends pas quand j'ai pas le bon résultat, c'est juste que quand je reçois "" ou null, je veux masquer une partie de la page...


---------------
Android/Manettes/Metroidvania/Zelda/Indés/Retrogaming/VDS jeux
Reply

Marsh Posté le 09-06-2006 à 09:12:22    

cosmoschtroumpf a écrit :

alors d'une part je peux pas le faire en c#, non seulement parce que le projet est presque fini, mais en plus parce que mon patron ne connait que le vb, et il faut qu'il puisse surveiller ce que je fais, au moins du coin de l'oeil. J'aurais préféré le faire en c# mais bon...
 
le tostring qui marche sur un null, ca me parait plutot normal. Pourquoi ça ne devrait pas marcher ? et c'est un concept .net, pas vb.net (ça marche aussi en c#, testaid).
 
Enfin, c'est pas que je comprends pas quand j'ai pas le bon résultat, c'est juste que quand je reçois "" ou null, je veux masquer une partie de la page...


ça marche carrément pas.
tu fous un null dans un string, ça plante en C#.
et appeler un DS sans transtypage pour le mettre dans un string (ou n'importe quel autre type), ça compile pas. :spamafote:
 
Sinon, pour ton problème, t'as testé ça sur ton OnItemDataBound de faire :
 

Code :
  1. if (e.Item.ItemType = ListItemType.Item || e.Item.ItemType = ListItemType.AlternatingItem)
  2. {
  3.    DataRowView dr = ((DataRowView) e.Item.DataItem);
  4.    if (dr["monchamp"] == null)
  5.    {
  6.       ((Label) e.Item.FindControl("monfield" )).Visible = false;
  7.    }
  8. }


 
Ca m'a pas l'air plus compliqué que ça...
Après tu te démerdes pour porter ça en VB.
 
Si ton patron mongolien sait lire du VB.NET et pas du C#, dit-lui de partir à la retraîte.
Perso, je bite pas une ligne en C ou C++ et VB n'a aucun secret pour moi. Par contre, VB.NET, comment dire... Euh... C# ça roule tout seul, c'est limpide. Comprend pas trop les mecs qui font du VB.NET parceque ça ressemble à VB... Y'a aucune ressemblence (à si, les blocs if then else end if... ouais...) Même Microsoft le dit en introduction du VB.NET : à part trois pauvres éléments de syntaxe, y'a pas une seule ressemblance entre les deux langanges... Alors autant passer au grand-frère qui n'est pas plus compliqué, mais largement plus clair... Enfin moi ce que j'en dit...


Message édité par Arjuna le 09-06-2006 à 09:12:46
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed