2012-04-23 9 views
5

Sto cercando di trovare il modo migliore per gestire un modello con un'immagine associata.asp.net mvc 3: modo migliore di gestire un modello con un'immagine

Non so se è meglio persiste l'immagine in archivio dati

class MyModel { 
    ... 
    public byte[] ImageData { get; set; } 
    ... 
} 

o salvare l'URL e caricare l'immagine di filesystem

class MyModel { 
    ... 
    public string ImageUrl { get; set; } 
    ... 
} 

La cosa essenziale è che voglio gestire l'immagine quando sto creando o modificando il record del modello.

Non voglio un modello/vista/controller dedicato per caricare/mantenere l'immagine sul server. Voglio gestire l'immagine collegata a una specifica entità nel db.

saluti, Giacomo

risposta

1

Il tuo primo approccio va bene perché si sta memorizzare l'immagine nel database. Avrai ancora bisogno di una funzione di supporto di qualche tipo che generi un URL per un gestore che esegue il rendering/visualizza l'immagine.

È possibile scegliere di anche archiviare l'URL dell'immagine in tal caso non è necessario necessariamente un metodo di supporto.

Se vuoi essere memorizzare le immagini esterne al database (ad esempio sul filesystem) non avrebbe bisogno il campo ImageData byte ovviamente ...

+0

Questo mi ha aiutato molto: http: //www.igloolab .com/jquery-html5-uploader/ – gsscoder

+0

@giacomo: Sono contento di averlo aiutato, tuttavia è un po 'offestivo se guardo la tua domanda ... – Ropstah

+0

Mi ha aiutato ad usare un approccio diverso. Io uso client js per inviare file e un controller per salvare il file sul server fs, quindi posso associare MyModel.ImageUrl al nome file. – gsscoder

Problemi correlati