2017-10-02 14 views
-1

ストアドプロシージャの出力パラメータに基づいてアラートを表示します。それが真実ならば、私は警告を表示したい。これは正直なことに困惑した。ここでストアドプロシージャの結果に基づいてasp.netで警告を表示

は、それが潜在的に危険であることに関するエラーを返すように私はこれまでのところ、それはResponse.Redirectを好きではないしているコードです:

public ActionResult NewCountry(string button,string Country,string Notes) 
{ 
    switch (button) 
    { 
     case "Save": 
      bool exists = InsertCountry(Country, Notes); 
      if (exists) 
      { 
       //Something 
       return Redirect("/Maintenance/Maintenance/Country"); 
      } 
      else 
       return Redirect("/Maintenance/Maintenance/Country"); 
     case "Cancel": 
      //Need to redirect to the countries page. 
      return Redirect("/Maintenance/Maintenance/Country"); 
    } 
    return View(); 
} 

誰もが確認を表示するために正しい方法で助言することができますASP.netで警告?

ありがとうございます。

+1

申し訳ありません私はresponse.redirect(js alert)を見て笑って申し訳ありません。それはちょうど素晴らしいです – JonH

+1

'Response.Redirect()'は* URI *をパラメータとして受け取ります。タグ内のJSコードのスニペットはURIではありません。 – Amy

+0

@JonHあなたのためにいくつかのエンターテイメントをもたらすと謝罪する必要はありません。これは私の通常の専門分野ではないので、答えがあり、それを分かち合う気があれば、とても感謝しています。 – Leonidas199x

答えて

4

本当に正しい方法は1つありません。実際には、サイトの前部に行っているアーキテクチャに依存します。 CSHTML/Ajax/Angularに基づいています。

あなたが表示したコードは、さまざまなアイデアを組み合わせたものです。それを整理する1つの方法は、このようなことをすることです。

public ActionResult NewCountry(string button,string Country,string Notes) 
    { 
     switch (button) 
     { 
      case "Save": 
       bool exists = InsertCountry(Country, Notes); 
       if (exists) 
       { 
        return Redirect("/Maintenance/Maintenance/Country?alert=true"); 
       } 
       else 
        return Redirect("/Maintenance/Maintenance/Country"); 
      case "Cancel": 
       //Need to redirect to the countries page. 
       return Redirect("/Maintenance/Maintenance/Country"); 
     } 
     return View(); 
    } 

ご覧のとおり、私はページURLに?alert = trueを追加しました。このパラメータを探すためにページの読み込み時にjavascriptを実行し、存在する場合は警告ボックスを表示します。

すべてのWebプログラミングでは、サーバー上で何が起こるか、ブラウザで何が起こるか、そして2者間で通信する方法を明確に理解することが重要です。

+0

これは、私が必要としていたすべてのものです。私は、おそらくあなたが言うことができるように、それをクライアントにプッシュするためにサーバーから通信する方法として困惑しました。これはまったく新しいものです。これは本当に簡単で、将来も大きな助けになるでしょう、ありがとう!できるだけ早く答えとして受け入れます。 – Leonidas199x

関連する問題