Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    285

    [VB.Net] un if nel template

    Sto cercando di inserire un if all'interno di un template ma non capisco come inserirlo in quanto mi restituisce sempre errore, quello che ho provato è più o meno questo..

    codice:
    																     <%if len (# container.dataItem, "descrizione")> 84 then %>
    <%#left(databinder.eval(container.dataItem, "descrizione"),83) & ".."%>
    <%else %>
    <%# databinder.eval(container.dataItem, "descrizione")%>
    <% end if %>
    Qualsiasi suggerimento su come modificare la forma è ben accetto, specialmente come intervenire sui template al di fuori dell'html..


    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    4,127
    ti fai la funzione
    Function Controlla(testo as string)
    If testo.Length > 84 then
    return testo.Substring(0, 83) & ".."
    else
    return testo
    end if
    End Function

    da rikiamare con
    <%# Controlla(databinder.eval(container.dataItem, "descrizione")) %>

  3. #3
    Oppure utilizzi IIF(<espr>, true, false)

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    4,127
    Originariamente inviato da alfdev
    Oppure utilizzi IIF(<espr>, true, false)
    si, puoi usarlo ma avevo letto da qualke parte ke fosse altamente sconsigliato..
    cioè se non sbaglio iif è "proprietario" di vb, non ha 1 corrispondente in cs..
    anzi non ce l'ha se non sbaglio è
    <espr> ? true:false
    si potrebbe vedere in termini di prestazioni qual è migliore, xò non so dirtelo x cui prima di dire cazzate sto zitto (anke se rimango dell'idea ke sia meglio l'if normale )

  5. #5
    L'idea di crearti una funzione è ottimo ma non so dirti a livello di prestazioni quale ti conviene di più....mi dispiace!

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    285
    Grazie millissime! vado subito a provare la funzione, che sia performante o meno non m'importa in questo caso, riguarda solo il databind di 5 record quindi..


    Grazie

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    4,127
    allora
    facendo un ciclo di 1.000.000 viene

    If-Else: 1406,25 IIf: 2296,875
    If-Else: 1437,5 IIf: 2265,625
    If-Else: 1406,25 IIf: 2250

    dati in millisecondi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.