cómo acceder a scriptData desde uploadify en el controlador MVC de asp.net
-
05-07-2019 - |
Pregunta
Hola chicos, tengo uploadify manejando algunos archivos subidos en mi proyecto mvc y esa parte está funcionando muy bien, solo quiero saber qué necesitaré agregar a la acción de mi controlador para obtener acceso a las variables scriptData que soy pasando desde el uploadify javascript
EDITAR para más aclaraciones:
mi script uploadify es el siguiente:
var fileCategoryID;
$(document).ready(function() {
$('#uploadify').uploadify({
'uploader': '../../scripts/uploadify.swf',
'cancelImg': '../../content/images/cancel.png',
'script': '../../' + $('#Controller').val() + '/FileSave/' + $('#OrderID').val(),
'folder': 'Uploads',
'multi': true,
'auto': false,
'queueSizeLimit': 5,
'queueID': 'fileQueue',
'displayData': 'speed',
'fileExt': '*.pdf',
'fileDesc': 'PDF',
'sizeLimit': '5242880',
'scriptData': { 'categoryID': fileCategoryID }
});
$('#fileCategory').change(function() {
fileCategoryID = $('#fileCategory').val();
});
});
Tengo curiosidad por saber cómo puedo acceder a estos datos desde la acción de mi controlador
Solución
Encontré una respuesta trabajando a través de ella por mi cuenta, al aceptar una colección de formularios en la acción de mi controlador, puedo acceder al parámetro categoryID desde el script uploadify.
EDITAR para algún código:
[AcceptVerbs(HttpVerbs.Post)]
public string FileSave(long id, HttpPostedFileBase FileData, FormCollection forms)
{
long catID = Int64.Parse(forms.Get("CategoryID"));
//do something with files
return "Upload Successful";
}
Otros consejos
<script type="text/javascript">
$(function () {
$('#file_upload').uploadify({
'swf': "@Url.Content("~/Content/UploadifyContent/uploadify.swf")",
'cancelImg': "@Url.Content("~/Content/UploadifyContent/uploadify-cancel.png")",
'uploader': "@Url.Action("Upload", "Callout", new { @id = 5 })",
'scriptData': { 'id': $('#Job_Id').val() },
'onUploadSuccess': function (file, data, response) {
$("#uploaded").append("<img src='" + data + "' alt='Uploaded Image' />");
}
});
});
</script>
Carga pública de ActionResult (ID larga, HttpPostedFileBase FileData) {
}
reemplace '5' con $ ('# /. blah'). val () o equivalente