更改(更新)未使用 LINQ to SQL 提交到多个列

本文关键字:提交 SQL to 更新 未使用 LINQ 更改 | 更新日期: 2023-09-27 18:34:14

我正在使用按钮尝试 linq to sql 查询,但更改没有提交。

这是我正在使用的代码:

using (Property_dbDataContext context = new Property_dbDataContext())
        {
            var user = (from a in context.User_profiles
                        where a.user_id == Convert.ToInt32(Request.QueryString["user_id"])
                        select a).FirstOrDefault();

            user.email = _Email.Text;
            user.first_name = _FirstName.Text;
            user.last_name = _LastName.Text;
            user.phone = _Phone.Text;
            user.cell = _Cell.Text;
            user.fax = _Fax.Text;
            user.address = _Address.Text;
            user.zip_code = _ZipCode.Text;
            user.country = _Country.SelectedItem.Text;
            context.SubmitChanges();
         }

更改(更新)未使用 LINQ to SQL 提交到多个列

你的代码似乎是正确的。我认为你错过了别的东西。所以我建议你应该尝试一些调试;首先确保始终将代码包装在null check中;

if(user !=null)
{
       user.email = _Email.Text;
            user.first_name = _FirstName.Text;
            user.last_name = _LastName.Text;
            user.phone = _Phone.Text;
            user.cell = _Cell.Text;
            user.fax = _Fax.Text;
            user.address = _Address.Text;
            user.zip_code = _ZipCode.Text;
            user.country = _Country.SelectedItem.Text;
            context.User_profiles.Attach(user);
            context.ObjectStateManager.ChangeObjectState(user, EntityState.Modified);
            context.SubmitChanges();
}

其次,出于调试目的,编写一些 const 字符串值以查看您是否真的在发布这样的数据;

user.email = _Email.Text;
            user.first_name = "test1";
            user.last_name = _LastName.Text;
           .........
            context.SubmitChanges();

第三,不要忘记,调试器是你最好的朋友:)

你试过这个吗?

using (Property_dbDataContext context = new Property_dbDataContext())
        {
            var user = (from a in context.User_profiles
                        where a.user_id == Convert.ToInt32(Request.QueryString["user_id"])
                        select a).FirstOrDefault();

            user.email = _Email.Text;
            user.first_name = _FirstName.Text;
            user.last_name = _LastName.Text;
            user.phone = _Phone.Text;
            user.cell = _Cell.Text;
            user.fax = _Fax.Text;
            user.address = _Address.Text;
            user.zip_code = _ZipCode.Text;
            user.country = _Country.SelectedItem.Text;
            context.User_profiles.Attach(user);
            context.ObjectStateManager.ChangeObjectState(user, EntityState.Modified);
            context.SubmitChanges();
         }