TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
danilo carrillo
NA
11
681
does not save the server side file
Jul 31 2019 9:16 PM
In this code I am using the asmx service using ajax, my files are stored in localhost, but when I upload it to a server on the internet it does not save, I gave it full control permissions in IIS. and I still do not find the problem.
var
form_data =
new
FormData();
form_data.append(
"Archivo"
, $(
'#txtArchivo'
)[0].files[0])
form_data.append(
"Fecha"
, $(
"#txtTitulo"
).val())
form_data.append(
"Descripcion"
, $(
"#txtActuaciones"
).val())
form_data.append(
"Id"
, $(
"#txtRadicadoOculto"
).val())
form_data.append(
"Carpeta"
, $(
"#inputSuccess"
).val())
console.log(
"datos"
+ JSON.stringify(form_data))
var
param = {
Id: $(
"#txtRadicadoOculto"
).val(),
Fecha: $(
"#txtTitulo"
).val(),
Descripcion: $(
"#txtActuaciones"
).val(),
Archivo: form_data
};
console.log(
"con el archivo"
+ JSON.stringify(param));
// formData.append("file", file);
$.ajax({
url:
'<%=ResolveUrl("ArchivoActuacion.asmx/Guardar")%>'
,
type:
'POST'
,
data: form_data,
// cache: false,
processData:
false
,
// Don't process the files
contentType:
false
,
// Set content type to false as jQuery will tell the server its a query string request
beforeSend:
function
() {
$(
"#load"
).fadeIn(100);
$(
'#loading'
).css({
'display'
:
'block'
});
},
success:
function
(data) {
console.log(
"mi respuesta"
+ data.success)
$(
"#load"
).fadeOut(200);
if
(data.success !=
true
) {
alert(
"No pudo guardarse! "
+ data.success)
}
else
{
alert(
"Guardado Satisfactoriamente!"
)
$(
"#txtTitulo"
).val(
""
)
$(
"#txtActuaciones"
).val(
""
)
$(
'#txtArchivo'
).val(
""
);
}
//alert("Guardado satisfactoriamente")
},
error:
function
(XMLHttpRequest, textStatus, errorThrown) {
var
err = eval(
"("
+ XMLHttpRequest.responseText +
")"
);
alert(
"ojo"
+ err.Message)
console.log(
"Ajax Error!"
);
$(
"#load"
).fadeOut(200);
}
});
public class ArchivoActuacion : System.Web.Services.WebService {
public
ArchivoActuacion()
{
//Elimine la marca de comentario de la línea siguiente si utiliza los componentes diseñados
//InitializeComponent();
}
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public
void
Guardar()
{
HttpContext Contexto = HttpContext.Current;
string
radicado = Contexto.Request.Form[
"Id"
];
// Byte[] archi = Contexto.Request.Form["archivo"]
string
fecha = Contexto.Request.Form[
"Fecha"
];
string
descripcion = Contexto.Request.Form[
"Descripcion"
];
string
carpeta = Contexto.Request.Form[
"Carpeta"
];
HttpFileCollection ColeccionArchivos = Context.Request.Files;
string
NombreArchivo =
""
;
string
directorio =
""
;
int
ArchivoActual = 0;
SqlConnection cn =
new
SqlConnection(ConfigurationManager.ConnectionStrings[
"ConLegasis"
].ConnectionString);
if
(ColeccionArchivos.Count != 0)
{
Contexto.Server.ScriptTimeout = 2400;
NombreArchivo = ColeccionArchivos[0].FileName;
String DatosArchivo = System.IO.Path.GetFileName(ColeccionArchivos[0].FileName);
string
filename =
string
.Format(
"{0}{1:yyyyMMdd_HHmmss}.{2}"
, Path.GetFileNameWithoutExtension(ColeccionArchivos[ArchivoActual].FileName), DateTime.Now, Path.GetExtension(ColeccionArchivos[ArchivoActual].FileName));
string
cadena = filename.Replace(
" "
, String.Empty);
// hpf.SaveAs(Server.MapPath(txtId.Value + "\\") + Path.GetFileName(cadena));
if
(Directory.Exists(Server.MapPath(carpeta)))
{
// String CarpetaParaGuardar = Server.MapPath("files") + "\\" + cadena;
String CarpetaParaGuardar = Server.MapPath(carpeta +
"\\"
) + Path.GetFileName(cadena);
ColeccionArchivos[0].SaveAs(CarpetaParaGuardar);
directorio =
"./"
+ carpeta +
"/"
+ Path.GetFileName(cadena);
// para sql
var strSQL =
"INSERT INTO Actuacion_simple VALUES("
+ radicado +
",'"
+ fecha +
"', '"
+ descripcion.ToUpper().ToString() +
"','"
+ directorio +
"')"
;
var cmd =
new
SqlCommand(strSQL, cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
Contexto.Response.ContentType =
"application/json"
;
Contexto.Response.Write(
"{\"success\":true,\"msg\":\""
+ NombreArchivo +
"\"}"
);
Contexto.Response.End();
}
else
{
Directory.CreateDirectory(Server.MapPath(carpeta));
String CarpetaParaGuardar = Server.MapPath(carpeta +
"\\"
) + Path.GetFileName(cadena);
ColeccionArchivos[0].SaveAs(CarpetaParaGuardar);
directorio =
"./"
+ carpeta +
"/"
+ Path.GetFileName(cadena);
// para sql
var strSQL =
"INSERT INTO Actuacion_simple VALUES("
+ radicado +
",'"
+ fecha +
"', '"
+ descripcion.ToUpper().ToString() +
"','"
+ directorio +
"')"
;
var cmd =
new
SqlCommand(strSQL, cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
Contexto.Response.ContentType =
"application/json"
;
Contexto.Response.Write(
"{\"success\":true,\"msg\":\""
+ NombreArchivo +
"\"}"
);
Contexto.Response.End();
}
}
else
{
directorio =
""
;
var strSQL =
"INSERT INTO Actuacion_simple VALUES("
+ radicado +
",'"
+ fecha +
"', '"
+ descripcion.ToUpper().ToString() +
"','"
+ directorio +
"')"
;
var cmd =
new
SqlCommand(strSQL, cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
Contexto.Response.ContentType =
"application/json"
;
Contexto.Response.Write(
"{\"success\":true,\"msg\":\""
+ NombreArchivo +
"\"}"
);
Contexto.Response.End();
}
}
}
Reply
Answers (
2
)
Asp.net web api
Thread was being aborted