我有一个控制器,其参数类型不同(型号,数组,字符串和整数) 这样的事情。
public JsonResult UpdateDemandeur(Demandeurs ddeur, Photos vImg, Array vRev, Array vLangAut, int vLangMater)
我想通过AJAX调用来发布我的数据,并且我使用了这种类型的东西:
var json = JSON.stringify({
'ddeur': {
ID_Ville: xIDVille,
ID_Province: xIDProv,
CodePostal_Demandeur: xCPDdeur,
Tel1_Demandeur: xTel1Ddeur,
Tel2_Demandeur: xTel2Ddeur,
Tel3_Demandeur: xTel3Ddeur,
Courriel1_Demandeur: xCour1Ddeur,
Courriel2_Demandeur: xCour2Ddeur,
Courriel3_Demandeur: xCour3Ddeur,
Code_Conseiller: xCodeCons,
ID_SituationMatrimoniale: xIDSitMat,
ID_Sexe: xIDSexe,
Date_Naissance_Demandeur: xDteNais,
ID_TranchesRevenu: xRevDdeur,
ID_Occupation: xIDOcc,
ID_Scolarite: xIDScol,
ID_StatutLegal: xIDStatLegal,
ID_Communaute: xIDComm,
ID_SourceInformation: xIDSceInfo,
Handicape: xHandicape,
Reference: xRef,
Remarques_Demandeur: xRemDdeur,
Date_Cloture_Dossier: xDtClotureDos,
Actif_Inactif: xInActif,
Dte_Saisie: xDteSaisie,
UserId: xUsrID
},
'vImg': {
Nom_Table: 'Demandeurs',
Photo: resp
}
...
});
$.ajax({
type: "POST",
url: "../Conseiller/UpdateDemandeur",
data: json,
dataType: "json",
...
正如你在屏幕截图中看到的那样,我在控制器端的变量是空的,没有错误...我已经尝试了几件事但是从那以后一直很头疼。
答案 0 :(得分:0)
没有必要对它进行字符串化..只需传递一组对象:
var json = [
{
ID_Ville: xIDVille,
ID_Province: xIDProv,
CodePostal_Demandeur: xCPDdeur,
Tel1_Demandeur: xTel1Ddeur,
Tel2_Demandeur: xTel2Ddeur,
Tel3_Demandeur: xTel3Ddeur,
Courriel1_Demandeur: xCour1Ddeur,
Courriel2_Demandeur: xCour2Ddeur,
Courriel3_Demandeur: xCour3Ddeur,
Code_Conseiller: xCodeCons,
ID_SituationMatrimoniale: xIDSitMat,
ID_Sexe: xIDSexe,
Date_Naissance_Demandeur: xDteNais,
ID_TranchesRevenu: xRevDdeur,
ID_Occupation: xIDOcc,
ID_Scolarite: xIDScol,
ID_StatutLegal: xIDStatLegal,
ID_Communaute: xIDComm,
ID_SourceInformation: xIDSceInfo,
Handicape: xHandicape,
Reference: xRef,
Remarques_Demandeur: xRemDdeur,
Date_Cloture_Dossier: xDtClotureDos,
Actif_Inactif: xInActif,
Dte_Saisie: xDteSaisie,
UserId: xUsrID
},
{
Nom_Table: 'Demandeurs',
Photo: resp
}
...
];
$.ajax({
type: "POST",
url: "../Conseiller/UpdateDemandeur",
data: json,
dataType: "json",
...
答案 1 :(得分:0)
我可以通过的唯一方法是在AJAX调用的数据部分中定义所有参数。 像这样:
$.ajax({
type: "POST",
url: "../Conseiller/UpdateDemandeur",
data: {
Adresse_Demandeur: xAddDdeur,
ID_Ville: xIDVille,
ID_Province: xIDProv,
CodePostal_Demandeur: xCPDdeur,
Tel1_Demandeur: xTel1Ddeur,
Tel2_Demandeur: xTel2Ddeur,
Tel3_Demandeur: xTel3Ddeur,
Courriel1_Demandeur: xCour1Ddeur,
Courriel2_Demandeur: xCour2Ddeur,
Courriel3_Demandeur: xCour3Ddeur,
Code_Conseiller: xCodeCons,
ID_SituationMatrimoniale: xIDSitMat,
ID_Sexe: xIDSexe,
Date_Naissance_Demandeur: xDteNais,
ID_TranchesRevenu: xRevDdeur,
ID_Occupation: xIDOcc,
ID_Scolarite: xIDScol,
ID_StatutLegal: xIDStatLegal,
ID_Communaute: xIDComm,
ID_SourceInformation: xIDSceInfo,
Handicape: xHandicape,
Reference: xRef,
Remarques_Demandeur: xRemDdeur,
Date_Cloture_Dossier: xDtClotureDos,
Actif_Inactif: xInActif,
Dte_Saisie: xDteSaisie,
UserId: xUsrID,
Nom_Table: xTable, //(varchar(50), not null)
Photo: null, //(varbinary(max)2147483647)
Nom_Fichier_Photo: resp, //(varchar(max), null)
Remarques_Photo: null, //(varchar(max), null)
},
dataType: "json",...
因此正确评估了我的所有参数类型。 我知道这不是编码(有了这个,我肯定很快会遇到一个瓶颈),所以如果有人可以帮忙解决这个问题,那就很有趣。