Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ASP.NET MVC AJAX将参数传递给控制器_Javascript_C#_Asp.net_Ajax_Asp.net Mvc - Fatal编程技术网

Javascript ASP.NET MVC AJAX将参数传递给控制器

Javascript ASP.NET MVC AJAX将参数传递给控制器,javascript,c#,asp.net,ajax,asp.net-mvc,Javascript,C#,Asp.net,Ajax,Asp.net Mvc,我得到了这个错误 没有给定与HomeController.GetCICO(字符串)的必需形式参数“SSN”对应的参数 根据该代码: public JsonResult GetAllCICO() { var cicos = GetCICO().ToList(); var jsonResult = Json(new{data = cicos}, JsonRequestBehavior.AllowGet); jsonResult.MaxJsonL

我得到了这个错误

没有给定与HomeController.GetCICO(字符串)的必需形式参数“SSN”对应的参数

根据该代码:

public JsonResult GetAllCICO()
    {
        var cicos = GetCICO().ToList();
        var jsonResult = Json(new{data = cicos}, JsonRequestBehavior.AllowGet);
        jsonResult.MaxJsonLength = int.MaxValue;
        return jsonResult;
    }
这是GetCICO:

public List<CICO> GetCICO(string SSN)
{
List<CICO> cicos = new List<CICO>();
using (SqlConnection con = new SqlConnection())
{
    con.ConnectionString = str;
    using (SqlCommand cmd = new SqlCommand())
    {
        cmd.Connection = con;
        cmd.CommandTimeout = 180;
        cmd.CommandText = "SELECT * FROM source_ips WHERE ssn_or_tin = '"+SSN+"' ORDER BY dateTrans ASC";
        con.Open();
        using (SqlDataReader sdr = cmd.ExecuteReader())
        {
            if (sdr.HasRows)
            {
                while (sdr.Read())
                {
                    CICO cico = new CICO()
                    {
                        ssn_or_tin = sdr["ssn_or_tin"] == DBNull.Value ? (double?)null : Convert.ToDouble(sdr["ssn_or_tin"]),
                        cusid = sdr["cusid"] == DBNull.Value ? (double?)null : Convert.ToDouble(sdr["cusid"]),
                        accountNo = sdr["accountNo"] == DBNull.Value ? (double?)null : Convert.ToDouble(sdr["accountNo"]),
                        dateTrans = sdr["dateTrans"].ToString(),
                        transCode = sdr["transCode"] == DBNull.Value ? (int?)null : Convert.ToInt32(sdr["transCode"]),
                        transdescription_1 = sdr["transdescription_1"].ToString(),
                        amount = sdr["amount"] == DBNull.Value ? (double?)null : Convert.ToDouble(sdr["amount"]),
                        cashin = sdr["cashin"] == DBNull.Value ? (double?)null : Convert.ToDouble(sdr["cashin"]),
                        cashout = sdr["cashout"] == DBNull.Value ? (double?)null : Convert.ToDouble(sdr["cashout"]),
                        source = sdr["source"].ToString()
                    };
                    cicos.Add(cico);
                }
            }
        }
        con.Close();
    }
}
return cicos;
}

那么,你想用哪种方法发布?我想这就是你想要的

JS:

C#:


那么,你想用哪种方法发布?我想这就是你想要的

JS:

C#:


似乎您在控制器“GetCICO”中调用了错误的操作您需要在URL中调用“GetALLCICO”:

url: "/Home/GetCICO"  this is wrong URL 

Your URL should be 

url: "/Home/GetALLCICO"
var SSNdata = { SSN: $("#SSN").val() };
$.ajax({
        type: "POST",
        contentType: "application/json;charset=utf-8",
        url: "/Home/GetAllCICO",
        data: JSON.stringify(SSNdata),
        dataType: "json"
    });
您的Json操作应该是:

    [HttpPost]
    public JsonResult GetAllCICO(string SSN)
    {
        var cicos = GetCICO().ToList();
        var jsonResult = Json(new{data = cicos}, JsonRequestBehavior.AllowGet);
        jsonResult.MaxJsonLength = int.MaxValue;
        return jsonResult;
    }
[HttpPost]
public JsonResult GetAllCICO(string SSN)
因为您是URL中的一个参数“SSN”:

url: "/Home/GetCICO"  this is wrong URL 

Your URL should be 

url: "/Home/GetALLCICO"
var SSNdata = { SSN: $("#SSN").val() };
$.ajax({
        type: "POST",
        contentType: "application/json;charset=utf-8",
        url: "/Home/GetAllCICO",
        data: JSON.stringify(SSNdata),
        dataType: "json"
    });
根据这一点,控制器的动作应为:

    [HttpPost]
    public JsonResult GetAllCICO(string SSN)
    {
        var cicos = GetCICO().ToList();
        var jsonResult = Json(new{data = cicos}, JsonRequestBehavior.AllowGet);
        jsonResult.MaxJsonLength = int.MaxValue;
        return jsonResult;
    }
[HttpPost]
public JsonResult GetAllCICO(string SSN)

似乎您在控制器“GetCICO”中调用了错误的操作您需要在URL中调用“GetALLCICO”:

url: "/Home/GetCICO"  this is wrong URL 

Your URL should be 

url: "/Home/GetALLCICO"
var SSNdata = { SSN: $("#SSN").val() };
$.ajax({
        type: "POST",
        contentType: "application/json;charset=utf-8",
        url: "/Home/GetAllCICO",
        data: JSON.stringify(SSNdata),
        dataType: "json"
    });
您的Json操作应该是:

    [HttpPost]
    public JsonResult GetAllCICO(string SSN)
    {
        var cicos = GetCICO().ToList();
        var jsonResult = Json(new{data = cicos}, JsonRequestBehavior.AllowGet);
        jsonResult.MaxJsonLength = int.MaxValue;
        return jsonResult;
    }
[HttpPost]
public JsonResult GetAllCICO(string SSN)
因为您是URL中的一个参数“SSN”:

url: "/Home/GetCICO"  this is wrong URL 

Your URL should be 

url: "/Home/GetALLCICO"
var SSNdata = { SSN: $("#SSN").val() };
$.ajax({
        type: "POST",
        contentType: "application/json;charset=utf-8",
        url: "/Home/GetAllCICO",
        data: JSON.stringify(SSNdata),
        dataType: "json"
    });
根据这一点,控制器的动作应为:

    [HttpPost]
    public JsonResult GetAllCICO(string SSN)
    {
        var cicos = GetCICO().ToList();
        var jsonResult = Json(new{data = cicos}, JsonRequestBehavior.AllowGet);
        jsonResult.MaxJsonLength = int.MaxValue;
        return jsonResult;
    }
[HttpPost]
public JsonResult GetAllCICO(string SSN)

Hansmagz,我认为您正试图通过http获取uri“/Home/GetAllCICO”来获取数据

如果是,请尝试以下代码

jquery MVC控制器 Ssnada类
希望这有帮助

Hansmagz,我认为您正试图通过HttpGet获取uri为“/Home/GetAllCICO”的数据

Javascript Code ::

                var ssnData="123";
                $.ajax({
                                type: "POST",
                                contentType: "application/json;charset=utf-8",
                                data: JSON.stringify({ 'SSNdata': ssnData }),
                                url: '@Url.Action("GetAllCICO", "Home")',
                                dataType: 'json',
                                success: function (cicos) {
                                    //cicos is your response data
                                }
                            });
    Controller part::

            public JsonResult GetAllCICO(string SSNdata)
                    {
                        var json=Json("Here your list",JsonRequestBehavior.AllowGet);
                        return json;
                    }
如果是,请尝试以下代码

jquery MVC控制器 Ssnada类

希望这有帮助

这是一个问题还是一个答案?@Joe_DM我猜他想发布到getallcicoI我想向我的SQL查询传递一个参数,有没有其他方法来代替我的当前代码?@Hansmagz关键是你需要先在方法中获取SSN参数。您的ajax调用类型是get还是post?@Hansmagz我认为我的所有代码和Laxman Gite都可以正常工作。首先更新并尝试调试。这是一个问题还是一个答案?@Joe_DM我想他想发布到getallcicoI我想向我的SQL查询传递一个参数,有没有其他方法来代替我的当前代码?@Hansmagz关键是你需要先在方法中获取SSN参数。您的ajax调用类型是get还是post?@Hansmagz我认为我的所有代码和Laxman Gite都可以正常工作。首先更新并尝试调试。Dude$(“#SSN”).val()不是模型,而是字符串。我想向我的SQL查询传递一个参数,有没有其他方法来代替我的当前代码?我认为使用GetCICO方法向SQL查询传递参数没有任何问题。唯一的建议是使用
SqlParameter
而不是字符串concat..@TheFORCEJB我该怎么做?你可以看看这个或谷歌一下:)Dude$(“#SSN”).val()它不是模型,它是字符串。我想给我的SQL查询传递一个参数,有没有其他方法可以代替我当前的代码来实现这一点?我认为用GetCICO方法将参数传递给Sql查询不会有任何问题。唯一的建议是使用
SqlParameter
而不是字符串concat..@TheFORCEJB如何做到这一点?你可以看看这个或用谷歌搜索:)美元(“#SSN”)中的值是多少。val()该值来自输入标记,例如:2369646@Hansmagz是否添加了[HTTPPOST]属性?美元(“#SSN”).val()的值是多少该值来自输入标记,例如:2369646@Hansmagz是否添加了[HTTPPOST]属性?
Javascript Code ::

                var ssnData="123";
                $.ajax({
                                type: "POST",
                                contentType: "application/json;charset=utf-8",
                                data: JSON.stringify({ 'SSNdata': ssnData }),
                                url: '@Url.Action("GetAllCICO", "Home")',
                                dataType: 'json',
                                success: function (cicos) {
                                    //cicos is your response data
                                }
                            });
    Controller part::

            public JsonResult GetAllCICO(string SSNdata)
                    {
                        var json=Json("Here your list",JsonRequestBehavior.AllowGet);
                        return json;
                    }