Я пытаюсь удалить записи из базы данных после того, как он удаляет каталог.
У меня есть кнопка для удаления, как только я нажимаю на кнопку, она должна вызвать ajax, а затем удалить Folder
если он существует, как только он удалит папку, затем удалите одну запись в базе данных
Вот мой код Ajax:
// Delete Folder
$("#btnDeleteFolder").click(function () {
var dirPath = $('#ContentPlaceHolder1_txtPath_I').val();
var folderName = $('#txtFolderName').val();
var location = $('#ddlLocation option:selected').text();
alert("FolderName = "+folderName);
alert("Location = "+location);
//alert('calling path =' + dirPath);
$.ajax({
method: 'post',
url: "GetAllFolderDetails.asmx/setDeleteFolder",
data: {
dirLocation: dirPath,
folderName: folderName,
location: location
},
dataType: "json",
success: function (data) {
location.reload(true);
//alert("Success");
},
error: function (result) {
alert("Error");
}
});
});
Asmx.cs
код:
public void setDeleteFolder(string dirLocation,string folderName,string location)
{
// First check Whether Other Folder or Files Exists inside the folder
// If it Exist, Delete those files and then delete your SELECTED Folder
string insidePath = Server.MapPath("~/" + dirLocation);
string[] files = Directory.GetFiles(insidePath, "*", SearchOption.AllDirectories);
foreach (string file in files)
{
File.Delete(file);
}
if (Directory.Exists(insidePath))
{
Directory.Delete(insidePath);
// Once the File Directory has deleted successfully, Then Delete the record from Database
var locationID = 0;
switch (location)
{
case "Store1":
locationID = 1;
break;
case "Store1":
locationID = 2;
break;
case "Store1":
locationID = 3;
break;
}
string cs = ConfigurationManager.ConnectionStrings["webConfigConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "DELETE Folder WHERE StoreID = @Storeid AND FolderName = @FolderName)";
cmd.Parameters.AddWithValue("@Storeid", 1); // For testing I directly give the value for parameters
cmd.Parameters.AddWithValue("@FolderName", "Sales");
con.Open();
cmd.ExecuteNonQuery();
}
}
JavaScriptSerializer js = new JavaScriptSerializer();
Context.Response.Write(js.Serialize("Successfully deleted"));
}
Сообщение об ошибке:
Внутренняя ошибка сервера
Примечание
Моя папка назначения Успешно удалена .Но в базе данных записи не удаляются