我在第一页两个注册页面我插入必填字段之后,我更新使用userid其他一些细节......用户ID是在DB一个标识列,所以我的更新存储过程无法更新DB值
ALTER procedure [dbo].[sp_update]
(@id int,@FormFiledBy varchar (50),@MaritalStatus varchar (50),@Height varchar (50),
@Religion varchar (50),@Caste varchar (100),
@MotherTongue varchar(50),@Education varchar (100),@Occupation varchar(50),
@CountryofResidence varchar (50),@EducationDetails varchar (100),@AnnualIncome varchar(50),
@CountryOfBirth varchar(50),@BirthPlace varchar(50),@TimeOfBirth nchar(10),@StarSign varchar (100),
@Gothram varchar (50),@Rassi varchar(50),@HavinChildren varchar(10),@PhysicalStatus varchar (100))
as
begin
update Profile_Master
set [email protected],[email protected],[email protected],
[email protected],[email protected],[email protected],
[email protected],[email protected],[email protected],[email protected],
[email protected],[email protected],[email protected],[email protected],
[email protected],[email protected],[email protected],[email protected],[email protected]
where [email protected]
return
end
在我DAL
public static int update(ProfileMasterBLL profileMasterBLL)
{
string userid = ProfileMasterDAL.GetUserIdByEmailID(profileMasterBLL.EmailID);
SqlConnection conn = Generic.DBConnection.OpenConnection();
try
{
SqlCommand cmdd = new SqlCommand("sp_update", conn);
cmdd.CommandType = CommandType.StoredProcedure;
cmdd.Parameters.AddWithValue("@FormFiledBy", profileMasterBLL.FormFiledBy);
cmdd.Parameters.AddWithValue("@MaritalStatus", profileMasterBLL.MaritalStatus);
cmdd.Parameters.AddWithValue("@Height", profileMasterBLL.Height);
cmdd.Parameters.AddWithValue("@Religion", profileMasterBLL.Religion);
cmdd.Parameters.AddWithValue("@Caste", profileMasterBLL.Caste);
cmdd.Parameters.AddWithValue("@Education", profileMasterBLL.Education);
cmdd.Parameters.AddWithValue("@Occupation", profileMasterBLL.Occupation);
cmdd.Parameters.AddWithValue("@CountryofResidence", profileMasterBLL.CountryofResidence);
cmdd.Parameters.AddWithValue("@EducationDetails", profileMasterBLL.EducationDetails);
cmdd.Parameters.AddWithValue("@CountryOfBirth", profileMasterBLL.CountryOfBirth);
cmdd.Parameters.AddWithValue("@BirthPlace", profileMasterBLL.BirthPlace);
在我的UI
protected void Button1_Click(object sender, EventArgs e)
{
// Get User ID from DAL
int chk = 0;
if (Session["EmailID"] != null)
{
emailID = Session["EmailID"].ToString();
}
ProfileMasterBLL prfbll = new ProfileMasterBLL();
string userid = ProfileMasterDAL.GetUserIdByEmailID(emailID);
我能够在这里得到的用户ID,但一压脚提升这个
chk = ProfileMasterDAL.update(prfbll);
在这里断点跳转到更新的方法和我得到EMAILID为空,所以我amgetting用户ID也为null对此有何帮助?
在我BAL
public class ProfileMasterBLL
{
public int UserId { get; set; }
public string FormFiledBy { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Gender { get; set; }
public string MaritalStatus { get; set; }
public string HavinChildren { get; set; }
public string EmailID { get; set; }
}
在我的第一页
我正在追赶会话值
Session["EmailID"] = TextBox8.Text;
那是哪里设置会话变量的代码?这听起来像问题可能在那里。 – FJT 2012-08-13 17:25:24
emailid来自第一页... – 2012-08-13 17:29:16
如果您的Session [“EmailID”]为空,会发生什么情况? 您的代码使用空字符串或空字符串调用更新。 – Steve 2012-08-13 17:42:15