Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Uso corretto degli Enumeratori

    Ragazzi non credo di aver capito bene come usare gli enumeratori.

    Definisco un enumeratore per il tipo dei file:

    codice:
        Public Enum enumTipoFile As Integer
    
            doc = 1
            pdf = 2
            txt = 3
            generico = 4
    
        End Enum
    dopo di che definisco una variabile di tipo "enumTipoFile":

    dim TipoFile as enumTipoFile

    Adesso quello che dovrei fare è memorizzare il mio tipo file in una campo del database, questo campo come lo dichiaro, di tipo stringa o di tipo integer? E che valore ci devo salvare dentro per i doc, ci salvo "1" oppure "doc"...

    Se scrivo:

    TipoFile = enumTipoFile.doc

    vedo che TipoFile = 1

    quindi prende il valore del contatore e mi starebbe pure bene, però il problema nasce poi quando richiamo il dato dal db, perchè questo mi restituisce 1, ma se voglio il valore "doc" ad esso abbinato come lo recupero... devo ogno volta fare una "select case"...?

    Lo ammetto sono un po' confuso... sapete indicarmi la retta via?

    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    codice:
    Option Strict On
    Imports l = libreria.ModuloWeb
    
    Public Enum enumTipoFile
        doc = 1
        pdf = 2
        txt = 3
        generico = 4
    End Enum
    
    
    Partial Class prove_a
        Inherits System.Web.UI.Page
    
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            'conosco il valore numerico sottostante
            prova(DirectCast(3, enumTipoFile))
    
            'conosco la rappresentazione testuale
            prova(DirectCast([Enum].Parse(GetType(enumTipoFile), "txt"), enumTipoFile))
        End Sub
    
        Private Sub prova(ByVal tipoFile As enumTipoFile)
            Response.Write(tipoFile & ", " & tipoFile.ToString & "
    ")
        End Sub
    End Class
    io lo salverei nel database come integer.

    L'unica cosa è che non hai messo il tipo generico uguale a zero (lo zero è il primo valore, quello predefinito)
    Pietro

  3. #3
    grazie millissime Pietro, adesso mi studio il tuo codice e faccio delle prove.

    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

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.