2016-05-18 5 views
0

Ich bin neu in der Entwicklung von Web-Anwendungen und vor allem neue mvc. Ich versuche, von einer Ansicht zu einer anderen Controller-Aktion einschließlich Parametern zu navigieren. Ich habe den Code unten in meiner Zeit Anzeige Ansicht:Wie kann ich eine Methode in einem anderen Controller einschließlich Parameter aufrufen mit mvc 6

<p> 
<a asp-controller="Working_set" asp-action="Create">Create new Working set</a> 
</p> 

@foreach (var item in Model) 
{ 
<div class="col-sm-6 col-md-3"> 
    <div class="thumbnail tile tile-medium"> 
     <a asp-controller="SelectedWorking_set" asp-action="index"> 
      <h2> 
       @Html.DisplayFor(modelItem => item.Name) 
       <input name="workingSetID" type="hidden" value="@item.Working_setID" /> 
      </h2> 
     </a> 
    </div> 
</div> 
} 

Wie kann ich den Working_setID im Controller SelectedWorking_set unten verwenden:

[Route("SelectedWorking_set")] 
public class SelectedWorking_setController: Controller 
{ 
    private FlightmapContext _context; 

    public SelectedWorking_setController(FlightmapContext context) 
    { 
     _context = context; 
    } 

    public IActionResult Index() 
    { 
     return View(); 
    } 

    [HttpPost("Index")] 
    public IActionResult Index([FromBody]int workingSetID) 
    { 
     //return View(_context.Project.ToList()); 
     return View(); 
    } 
} 

Antwort

0

Sie müssen Eingabe Namen Ihre Controller-Methode übergeben wie unter Beispiel ;

<input name="workingSetID" type="hidden" value="@item.Working_setID" /> 

hier „workingSetID“ name wir Ihre Controller-Methode übergeben müssen, Angenommen, Ihre Methodenname ist „Index“ dann müssen Sie wie folgt in Ihrem Controller zu schreiben.

[HttpPost] 
public ActionResult Index(string workingSetID) 
{ 
    //Code here 
} 

so erhalten Sie "Working_setID" Wert in Ihrer Controller-Methode. Außerdem müssen Sie den Submit-Button eingeben, um diesen Wert an den Controller zu senden.

Verwandte Themen