2012-04-23 18 views
5

Estoy tratando de encontrar la mejor manera de administrar un modelo con una imagen asociada.asp.net mvc 3: mejor manera de administrar un modelo con una imagen

No sé si es mejor Persiste la imagen en el almacén de datos

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

o guardar la URL y subir la imagen del sistema de ficheros a

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

Lo esencial es que quiero Administrar la imagen cuando estoy creando o editando el registro del modelo.

No quiero un modelo/vista/controlador dedicado para cargar/mantener la imagen en el servidor. Quiero administrar la imagen vinculada a una entidad específica en el db.

Saludos, Giacomo

Respuesta

1

Su primer enfoque está bien porque está almacenando la imagen en la base de datos. Todavía necesitará una función auxiliar de algún tipo que genere una URL para un controlador que represente/visualice la imagen.

Puede optar por también almacenar la url de la imagen en cuyo caso no necesitaría necesariamente un método de ayuda.

Si quieres ser el almacenamiento de imágenes fuera de la base de datos de (por ejemplo, en el sistema de archivos) no necesitaría el campo ImageData bytes obviamente ...

+0

Esto me ha ayudado mucho: http: //www.igloolab .com/jquery-html5-uploader/ – gsscoder

+0

@giacomo: Me alegro de que haya sido de ayuda, sin embargo, es un poco fuera de lugar si veo tu pregunta ... – Ropstah

+0

Me ayudó a utilizar un enfoque diferente. Utilizo js del lado del cliente para publicar archivos y un controlador para guardar el archivo en el servidor fs, de lo que puedo asociar MyModel.ImageUrl con el nombre del archivo. – gsscoder

Cuestiones relacionadas