我目前使用存储过程有一个DataContext。问题是最后一个值,在尝试传入GUID值时不断给出以下错误消息。
必须使用'ref'关键字传递参数13。
使用的代码:
Guid g;
g = Guid.NewGuid();
testDBAthDataContext dataOut = new testDBAthDataContext();
dataOut.aspnet_Membership_CreateUser("APPNAME", "test@test.com", pass, passSalt, "test@test.com", "test Quest", "test Awr", true, saveNowDt, createdDt, null, null, g);
testDBAth.designer.cs使用的“aspnet_Membership_CreateUser”参数的代码布局。
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userName, password, passwordSalt, email, passwordQuestion, passwordAnswer, isApproved, currentTimeUtc, createDate, uniqueEmail, passwordFormat, userId);
userId = ((System.Nullable<System.Guid>)(result.GetParameterValue(12)));
return ((int)(result.ReturnValue));
答案 0 :(得分:1)
修正了它,忘了添加?关于Guid变量。
所以代码现在看起来像:
Guid? g;
g = Guid.NewGuid();
并且还将ref添加到最终值。正如https://stackoverflow.com/users/3179310/m-rogalski
所建议的那样以下代码:
dataOut.aspnet_Membership_CreateUser("APPNAME", "test@test.com", pass, passSalt, "test@test.com", "test Quest", "test Awr", true, saveNowDt, createdDt, null, null, ref g);