私が作成している小さなPOCWebアプリがあり、私のページの1つは「ViewAds」と呼ばれています(それが何をするか想像できます)。とにかく、サイト管理者のために、各広告に削除ボタンがあります。これは、コントローラーアクションDeleteAdへのajax呼び出しを呼び出します。これは、DALを押すだけで、アイテムを削除して戻ります。リダイレクトも更新も何もありません。
Ajaxコールバックは、私が更新を処理する場所です。
success: function(){
url = '@Url.Action("ViewAds","Ad",new{OtherOptionsForDisplayingAdsGo=here})';
window.location.href = url;
}
これは広告のDBに再びヒットし、削除された広告なしで私のビューを返すはずです。
ただし、代わりに、手動で更新するまで広告が表示されたままページが表示されます。また、ViewAdsにブレークポイントを設定して、更新する時間を与えると(おそらく)、正常に機能することにも気づきました。誰かがここで何が起こっているのか知っていますか?
あなたがそれを見たいと思った場合に備えて、これが私のViewAdsです:
public ActionResult ViewAds(string getAllAds = "false")
{
bool GetAllAds = bool.Parse(getAllAds);
List<PostedAD> results;
if (Session["Location"] == null || GetAllAds)
{
DataManager _dataProvider = new DataManager();
results = _dataProvider.FetchAds();
ViewData["ViewAllAds"] = "True";
return View("ViewAds", results);
}
else
{
string Location = Session["Location"].ToString();
DataManager _dataProvider = new DataManager();
results = _dataProvider.FetchAdsByLocation(Location);
ViewData["ViewAllAds"] = "False";
return View("ViewAds", results);
}
}
そして、削除はかなり直感的です。DataManager.Delete()
特定の広告で私を呼び出すだけです。(正常に動作します)
それで、誰かがこれを手伝うことができますか?何が起こっているのかわかりませんが、ajaxと関係があると思います。