window.location.href上的第二个参数在Controller上获取NULL

时间:2016-10-03 13:46:07

标签: c# asp.net-mvc

所以我试图辨别为什么调用我的控制器的某个方法的第二个参数变为NULL,这是我在我的cshtml上的代码:

$("#aceptarBorrar").click(function () {
    debugger;
    window.location.href = '@Url.Action("BajaServAsoc", "ServiciosAsoc")' + '?CodServ=' + codSerElim, + '?CodServAsoc=' + codSerAsElim;
        });

在调试器的这一点上,我的变量都有值。

但是在这一点上:

public ActionResult BajaServAsoc(string CodServ, string CodServAsoc)
{
    try
    {

        string usuario = SessionHelpers.DatoPuente.UsuarioLegajo;
        ServiciosAsocNegocio SerANeg = new ServiciosAsocNegocio();
        SerAsociado ServA = new SerAsociado()
        {
            CodServ = CodServ,
            CodServAsoc = CodServAsoc,
            User = usuario
        };
        SerANeg.BajaServAsoc(ServA);
        return View("Index");
    }

价值丢失了,我不知道为什么,我不知道哪里失去它的价值,为什么不是两个都没有。

3 个答案:

答案 0 :(得分:3)

这里有一些错误:

'?CodServ=' + codSerElim, + '?CodServAsoc=' + codSerAsElim;

首先,强制逗号是语法错误。完全摆脱它:

'?CodServ=' + codSerElim + '?CodServAsoc=' + codSerAsElim;

其次,生成的URL没有两个有效参数,只有一个。使用&添加更多网址参数:

'?CodServ=' + codSerElim + '&CodServAsoc=' + codSerAsElim;

答案 1 :(得分:2)

你有两个吗?在您的查询字符串中。第二个应该是&符号

答案 2 :(得分:1)

您的网址格式不正确。问号?只应使用一次,以指示查询字符串的开头。使用&符号&连接值(对),并使用等号=连接每个键/值对。

有关详细信息,请查看此处:https://en.wikipedia.org/wiki/Query_string