数据集引用不正确

天尼丹

我的数据集有问题。我正在使用一个来填充表单的文本框。用户选择要搜索的值,然后按一个按钮,然后填充文本框。这对于第一条记录来说效果很好,但我想翻页。我已经声明一个数据集供其他方法使用,但是当它对分页返回的行进行分页时,我不断收到对象引用错误。谁能告诉我我要去哪里错了?

声明变量:

//creates a global dataset for the copies table
DataSet dataSetHM;
//create default row values
int MaxRows = 0;
int inc = 0;

与数据库的连接并填充数据集:

protected void ExecuteSelectCopies(string sName)
{
    SqlConnection connection = new SqlConnection(GetConnectionString());
    string sql =
        "SELECT tblCopies.CopyID, tblSoftware.SoftwareName, tblCopies.AssetName, tblCopies.Location,"
        + " tblCopies.LicenceKey, tblCopies.OEM, tblCopies.State, tblCopies.InstallationDate"
        + " FROM tblCopies"
        + " INNER JOIN tblSoftware ON tblCopies.SoftwareID = tblSoftware.SoftwareID"
        + " WHERE tblSoftware.SoftwareName = @SoftwareName"
        + " ORDER BY tblCopies.CopyID";
    SqlDataAdapter adapterHM = new SqlDataAdapter();
    SqlCommand select = new SqlCommand(sql, connectionHM);
    adapter.SelectCommand = select;
    select.Parameters.Add(new SqlParameter("@SoftwareName", sName));
    //open the connection
    connectionHM.Open();
    dataSetHM =  new DataSet();
    adapterHM.Fill(dataSetHM, "Copies");
    NavigateCopies();
    MaxRows = dataSetHM.Tables["Copies"].Rows.Count;

    connectionHM.Close();
}

填充文本框的方法:

    private void NavigateCopies()
{
    DataRow dRow = dataSetHM.Tables["Copies"].Rows[inc];
    TextBoxCopyID.Text = dRow.ItemArray.GetValue(0).ToString();
    TextBoxSoftwareName.Text = dRow.ItemArray.GetValue(1).ToString();
    DropDownListAssetName.SelectedItem.Text = dRow.ItemArray.GetValue(2).ToString();
    DropDownListLocation.SelectedItem.Text = dRow.ItemArray.GetValue(3).ToString();
    TextBoxLicence.Text = dRow.ItemArray.GetValue(4).ToString();
    DropDownListType.SelectedItem.Text = dRow.ItemArray.GetValue(5).ToString();
    DropDownListState.SelectedItem.Text = dRow.ItemArray.GetValue(6).ToString();
    TextBoxInstall.Text = dRow.ItemArray.GetValue(7).ToString();    
}

最后是下一条记录的按钮:

    protected void ButtonNext_Click(object sender, EventArgs e)
{
    if (inc != MaxRows - 1)
    {
        inc++;
        NavigateCopies();
    }
    else
    {
        MessageBox.show("No more Rows");
    }

}

任何帮助,将不胜感激。老实说,我不明白为什么数据集最初适用于导航方法,而不适用于第二种方法。我一直在使用此http://www.homeandlearn.co.uk/csharp/csharp_s12p7.html作为指南,他们的示例显示了页面加载时的数据,其中选择了搜索参数时显示的是我的页面。我不知道这是否有问题,但是更多的信息永远不会伤害您!

里克

将其保留DataSet在Session / Cache / ViewState中(其中任何一种对您来说都是最适用的解决方案)。这样,您可以检索DataSet之间的,并继续显示所需的数据。

这是实现此目的的方法(尽管是一个简单的示例),还有一篇文章探讨了asp.net中的对象持久性asp.net对象持久性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

DICOM 数据集加载不正确

来自分类Dev

Codeigniter多语言/会话引用不正确

来自分类Dev

SSRS数据集错误:目标主体名称不正确

来自分类Dev

opengl多维数据集显示不正确

来自分类Dev

DateTime使用不正确的时区

来自分类Dev

跟踪:requestLayout()调用不正确?

来自分类Dev

样式应用不正确

来自分类Dev

JavaScript调用不正确吗?

来自分类Dev

按键/更新调用不正确?

来自分类Dev

闹钟应用不正确

来自分类Dev

DateTime使用不正确的时区

来自分类Dev

CSS应用不正确?

来自分类Dev

JavaScript调用不正确吗?

来自分类Dev

Swift:UIButton调用不正确

来自分类Dev

按键/更新调用不正确?

来自分类Dev

样式应用不正确

来自分类Dev

UICollectionView cellForItem调用不正确

来自分类Dev

为什么会出现错误“对成员'下标'的引用不正确”?

来自分类Dev

数据汇总不正确

来自分类Dev

选择的数据不正确

来自分类Dev

VOCBboxDataset 应用于我的数据集时返回不正确的数据集大小

来自分类Dev

使用不正确的日期值将csv导入Postgres数据库

来自分类Dev

Logstash-filter-rest发送的字段引用不正确,它始终引用已引用的第一个字段值

来自分类Dev

ng2图表中条形图的数据集设置不正确

来自分类Dev

AmCharts股票图表多个数据集日期范围不正确

来自分类Dev

注释-使用不正确的正方形

来自分类Dev

使用不正确的密钥大小的AES加密示例

来自分类Dev

堆栈超出范围。也许调用不正确?

来自分类Dev

RubyMine使用不正确/不同的Ruby版本-Ubuntu