如何在Asp.Net Core中将AJAX用于ViewComponent?也就是说,调用方法@Component.Invoke ("ComponentName", SomeData); ViewComponent将涉及各种取决于SomeData的 View ,而无需重新启动主 View 。

更新

我的解决方案是:

$(function () {
      $(Container).load('ControllerName/ControllerAction', {
                ArgumentName: ArgumentValue });
                                                 });

Controller :
public IActionResult ControllerAction(string value)
        {
           return ViewComponent("ViewComponent", value);
        }

有没有一种方法可以在以前的版本中直接使用ViewComponent作为AjaxHelpers?

最佳答案

您的解决方案是正确的。 From the docs:

因此,正如您所建议的,a lightweight controller可以充当ViewComponent的AJAX代理。

public class MyViewComponentController : Controller
{
    [HttpGet]
    public IActionResult Get(int id)
    {
        return ViewComponent("MyViewComponent", new { id });
    }
}

10-08 02:16