如何在 VS 2017 C# 和 MVC 5 中使用 ASP.Net MVC 子操作

How to use ASP.Net MVC Child Actions with VS 2017 C# and MVC 5

我有一个方案,但不知道是否可以通过子操作来实现。

我没有任何代码可以显示。基本上,在包含摘要数据的视图左侧会有一个简单的列表。在列表的每一行上还会有一个 'view details' link 或按钮。因此,我希望用户单击 link/button,然后在右侧我希望显示有关特定所选项目的更多详细信息。然后,用户可以单击另一个项目的查看详细信息并查看这些详细信息等。

如何在 ASP.Net MVC 中最好地实现这一点?

提前致谢。

这是 OP 的示例,这可能是也可能不是最好的方法,但它会起作用:

所以你的左侧面板有按钮或链接,如果你的 button/link 的文本足以从服务器拉回相关数据,只需通过 Ajax 将其传递给服务器即可,否则如果你想使用 id 或一些唯一标识符,你可以将它附加到你的 buttons/links 的 id 属性,然后将它传递给服务器,我会让你决定你想使用哪个:

//Example HTML
<div id="panelLeft">
   <button id="btnOne" class="btnInfo">Info on Cats</button>
   <br/>
   <button id="btnTwo" class="btnInfo">Info on Dogs</button>
</div>

//Assuming you are using JQuery
//Either in your page add a script tag with this code, or add a script file
//to your project and import it into your page (View)
$(function(){
      //Add click events to all your buttons by using the common className btnInfo
      $('.btnInfo').on('click', function(){
            const serverSideData = $(this).text(); //If you are using the text
            //of the button to find the info server side
            $.ajax({
                  url: "yourUrlToServerSideMethod",
                  type: "POST",
                  data: { yourServerSideParameter: serverSideData },
                  success: function(data){
                      //Successfully posted to server and got response
                      //If data is in JSON format, you can parse it with JSON.parse()

                      //Clear your div on the right which displays the item data
                      $('#divRightPanelInfo).html('');
                      $('#divRightPanelInfo).append(data); //If this is just a string
                      //Or create some pretty element(s) and append that to div

                  },
                  error: function(jqXHR, exception){
                      //Handle error, show error label or something
                  }
              });
       });
 });