`m en utilisant la fonction de Javascript qui utilise un web service et après avoir terminé je dois mettre à jour une grille DatasourceJavascript appelant webservice et ASP.Net séquence
Pour accomplir cette tâche j'ai appelé la fonction javascript via RegisterClientScriptBlock puis appelez la méthode UpdateGridDataSource
Mais lors du débogage, j'ai trouvé qu'il appelait la méthode UpdateGridDataSource en premier. Puis appelez la méthode dans le WebService!
ASP.Net code
System.Web.UI.ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "delete", "DrawPOI();", true);
UpdateDataSource();
JavaScriptCode
function DeletePOI(arg) {
//Some Code
$.ajax({
url: "JSBLL.asmx/DeletePOI",
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: "{id:'" + arg + "'}",
success: function (msg) {
alert(msg.d);
},
error: function (e) {
alert('Error');
}
}); //some code
return false;
}
WebService:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string DeletePOI(string ID)
try
{
if (id == "")
throw new Exception();
long ID = Convert.ToInt64(id);
using (GuardEntities database = new GuardEntities())
{
var poi = database.POIs.Where(x => x.ID == ID).FirstOrDefault();
database.POIs.DeleteObject(poi);
database.SaveChanges();
}
return "POI Deleted Successfully";
}
catch
{
return "Error Occured";
}
}
Le problème est que UpdateDataSource() est appelée avant DeletePOI (ID de chaîne)
mettre un peu de code pour comprendre le problème –
Le problème est dans la séquence des événements de tir si vous ne l'avez pas remarqué :) – Ahmed
Code ajouté à la question – Ahmed