Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    cast non valido dal dbnull al string

    Ciao ragazzi,
    ho questa funzione per convertire una data, purtroppo mi restituisce l'errore che vi ho scritto inoggetto, anche se ho messo il controllo che vi evidenzio in neretto.
    Sapete dirmi come posso risolvere?
    grazie a tutti

    Questa è la funzione:

    codice:
    Function Data(ByVal valore As String)
            If valore <> "0" And valore IsNot System.DBNull.Value   Then
                Dim DataCorta As String
                Dim giorno, mese, anno As String
                Dim DataLunga As String
    
                DataCorta = Left(valore, 10)
                anno = Left(DataCorta, 4)
                mese = Mid(DataCorta, 5, 2)
                giorno = Mid(DataCorta, 7, 2)
    
                DataLunga = giorno & "/" & mese & "/" & anno
    
                Return DataLunga
            Else
                Return ""
            End If
        End Function

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    prova con

    codice:
    ...And Not IsDBNull(valore)
    pero' DBNull si usa quando sei in binding...

  3. #3
    mmm... e quindi come potrei fare per risolvere il problema?

    grazie

  4. #4
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Originariamente inviato da zetaweb
    mmm... e quindi come potrei fare per risolvere il problema?

    grazie
    Non passando un valore null ad una funzione che si aspetta una stringa...

    Function Data(ByVal valore As String)

    Essendo sconosciuto il contesto è impossibile precisare meglio, nella parte interna della funzione, se gli passi un valore null, non ci arriva proprio.
    Ciao.
    Legnetto

  5. #5
    Ciao legnetto,
    purtroppo il valore arriva da una query, dove può capitare che il valore sia nullo.

    dovrei nel code front fare in modo che se il valore è nullo non richiede la funzione, ma come faccio?

    il code-front è questo
    codice:
    <asp:TemplateColumn HeaderText="DATA DDT">  
          <ItemTemplate>
            <asp:Label 
            ID="LblDataDDT" 
            Text='<%# Data(Databinder.Eval(Container.Dataitem, "data_ddt")) %>' runat=server />
        </ItemTemplate>
    </asp:TemplateColumn>
    grazie

  6. #6
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    select ..... isnull(nome_campo,"") as campostringa.... nella query
    Crearti una funziona protetta che intercetta i valori null e li converte in stringa
    Mettere object al posto di string nellla funzione

    Ciao

  7. #7
    era tutto nell'object al posto della string il problema.
    ho risolto così, magari a qualcuno potrà servire in futuro

    codice:
    Function Data(ByVal valore As Object)
            If Not valore Is System.DBNull.Value Then
    
                If valore <> "0" Then
                    Dim DataCorta As String
                    Dim giorno, mese, anno As String
                    Dim DataLunga As String
    
                    DataCorta = Left(valore, 10)
                    anno = Left(DataCorta, 4)
                    mese = Mid(DataCorta, 5, 2)
                    giorno = Mid(DataCorta, 7, 2)
    
                    DataLunga = giorno & "/" & mese & "/" & anno
    
                    Return DataLunga
                Else
                    Return ""
                End If
    
            End If
        End Function
    Grazie mille a tutti

  8. #8
    anche io ho questo problema, come mai se cerco di impostare il valore null ad una data mi da errore? ho necessità di impostare a null il campo nel db quando l'utente non inserisce la data
    la vita è un fulmine ma prenderlo nel culo è un lampo.

  9. #9
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Originariamente inviato da zetaweb
    era tutto nell'object al posto della string il problema.
    ....
    Guarda che le tre soluzioni proposte, risolvevano tutte il problema, non solo l'object
    Ciao
    Legnetto

  10. #10
    ora vi spiego il mio problema

    ho un dataset che ha un metodo di insert e contiene un valore data

    la firma del metodo è insert(int idCliente, DateTime dataNascitA, ...altro)

    come dovrei richiamare il metodo quando l'utente non inserisce la data di nascita?

    visto che il presunto valore della data di nascita è in una variabile di tipo DateTime che però non può assumere valore null e non capisco il perchè...
    la vita è un fulmine ma prenderlo nel culo è un lampo.

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.