简体   繁体   English

将IEnumerable列表数据传递到控制器

[英]Pass IEnumerable List data to Controller

I need to pass Model.Component_GroupPanel_Component List to the controller. 我需要将Model.Component_GroupPanel_Component List传递给控制器​​。 I have following code but couldn't achieve it. 我有以下代码,但无法实现。

Code in view:----- 查看代码:-----

var test = { rows : @Html.Raw(Model.Component_GroupPanel_Component) ,
        cmp_DB_ID: @Model.Component_GroupPanel_Component[0].CHILD_CMP_DBID };

$("#btnUpdate").click(function() {
        $.ajax({
            url: "@Url.Action("EditMy", "ComponentGroupPanel")",
            data: JSON.stringify(test),
            type: 'POST',
            contentType: "application/json",
        });
    });

Code in controller:----- 控制器中的代码:-----

public JsonResult EditMy(IEnumerable<cmp_grouppanel_cmp> rows, int cmp_DB_ID) {
            return Json(true);
        }

I think it looks like you should be using an Ajax action link. 我认为您应该使用Ajax操作链接。 This is available in Razor so you can run it client side like your code is here and it will load the objects you need. Razor中提供了此功能,因此您可以像在此处的代码一样在客户端运行它,它将加载所需的对象。

https://msdn.microsoft.com/en-us/library/system.web.mvc.ajax.ajaxextensions.actionlink(v=vs.118).aspx https://msdn.microsoft.com/zh-CN/library/system.web.mvc.ajax.ajaxextensions.actionlink(v=vs.118).aspx

http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/ajax-actionlink-and-html-actionlink-in-mvc/ http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/ajax-actionlink-and-html-actionlink-in-mvc/

If you need to run a partial postback, you could also use an Ajax form in Razor. 如果需要运行部分回发,也可以在Razor中使用Ajax表单。

http://www.codeproject.com/Articles/429164/Html-BeginForm-vs-Ajax-BeginForm-in-MVC http://www.codeproject.com/Articles/429164/Html-BeginForm-vs-Ajax-BeginForm-in-MVC

Hope that helps 希望能有所帮助

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM