【问题标题】:TableAdapter Update FailsTableAdapter 更新失败
【发布时间】:2015-05-20 14:14:58
【问题描述】:

我正在尝试更新 tbUsers 表中 userPassword 列中的用户密码。

单击“确认按钮”时出现以下错误:未将对象引用设置为对象的实例 - 未处理 NullReferenceException

它说我需要实例化一些东西,但我不知道是什么。我已经实例化了 tableAdapter。

感谢您的帮助!

using System.Data;
using System.Data.SqlClient;
using System.IO;
using Library.DataBase.dsLibraryTableAdapters;
using Library.DataBase;    

tbUsersTableAdapter tableAdapterUsers = new tbUsersTableAdapter();
dsLibrary.tbUsersDataTable dataTableUsers;

private void btnConfirm_Click_1(object sender, RoutedEventArgs e)
{
    tbUsersRow = (dsLibrary.tbUsersRow)dataTableUsers.FindByIdPeopleIdUser(value1, value2);
    tbUsersRow.userPassword = txtNewPassword.Password.ToString(); <- ERROR HERE
    tableAdapterUsers.Update(dataTableUsers);
}

【问题讨论】:

  • 可能txtNewPassword 没有.Password 属性,因此它被视为碰巧为空的对象。它是什么?它抱怨的“东西”是什么?
  • txtNewPassword 确实有一个 .Password 属性,我以前用过。错误是:System.NullReferenceException 未处理 HResult=-2147467261 Message=Object reference not set to an instance of an object Source=Library

标签: c# sql ado.net dataset tableadapter


【解决方案1】:

好吧,这似乎解决了问题。

谢谢大家!

using System.Data;
using System.Data.SqlClient;
using System.IO;
using Library.DataBase.dsLibraryTableAdapters;
using Library.DataBase;    

tbUsersTableAdapter tableAdapterUsers = new tbUsersTableAdapter();
dsLibrary.tbUsersDataTable dataTableUsers;

private void btnConfirm_Click_1(object sender, RoutedEventArgs e)
{
     dataTableUsers = tableAdapterUsers.getDataByUserName(lblUser.Content.ToString());
     tbUsersRow = (dsLibrary.tbUsersRow)dataTableUsers.Rows[0];
     tbUsersRow.userPassword = txtNewPassword.Password.ToString();
     tableAdapterUsers.Update(dataTableUsers);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多