2016-04-02 1 views
0

ボタンからtrue、falseをコントローラに送信する必要があります。キリストの動作NeedHelpTrueOrFalse。データマネージャーで フォームのaspボタンからコントローラのメソッドにパラメータを送る

public IActionResult NeedHelpTrueOrFalse(bool trueOrFalse) 
     { 
      try 
      { 
       var dataManager = new DataManager(context); 
       dataManager.HelpTrueOrFalse(User.Identity.Name, trueOrFalse); 
       return ViewComponent("QueListViewComponent"); 
          } 

      catch (Exception e) 
      { 
       ModelState.AddModelError(string.Empty, e.Message); 
       return View(); 
      } 

} 

:フォーム送信

public void HelpTrueOrFalse (string UserName, bool trueOrFalse) 

    { 
     var user = context.Users 
      .Where(o => o.UserName == UserName).SingleOrDefault(); 

     if(user != null) 
     { 
      user.NeedHelp = trueOrFalse; 

      context.SaveChanges(); 
     } 
    } 
+0

シェア詳細は、(HTTPGETまたはHttpPost)、パラメータなどをコントローラで、あなたが "問題解決"のように何を望みますか?それ以外の場合は真実を追加してください。 – Sachin

+1

真偽を送信することはどういう意味ですか? –

+0

「問題が解決しました」ボタンは、アクションにfalseを送信したいので、DBに設定することができます。他のボタンは、アクションにtrueを送信する必要があります。 –

答えて

0

がある場合、これはコントローラでViewComponent

form asp-controller="QueList" asp-action="NeedHelpTrueOrFalse" 


     @foreach (var item in Model) 
     { 
      if (item.IsUserItem) 
      {     
       <input type="button" id="btnClick" value="Problem Solved" class="btn btn-success" /> 
       break; 
      } 
      else 
      { 
       <input type="button" id="btnClick" value="Help" class="btn btn-success" /> 
      } 
     }    
    </form> 

にあるとき

私はURLでjqueryのを使用can't次のように試してみてください:

012アクションの種類が何であるかのようにここで

それがパラメータとしてtrueOrFalseを提出すると、あなたが好きな隠しフィールドにその値を設定することができます。..

+0

動作させることができません。このビューの新機能です。コンポーネント(レイアウト内に1つのモデルを表示したい場合、インデックスに別のモデルを表示する場合)。ボタンを押すと何も起こらないので、Mabyeは正しく更新されません。 –

+0

ボタンのタイプを 'submit'に変更してください.. – Sachin

+0

あなたの助けを感謝します=)) –

関連する問題