C# ExecuteReader:CommandText属性尚未初始化
我做了几个小时的研究,但似乎没有什么适合我目前的情况 使用:Visual Studio 2010.net 4.0, 语言:C 问题: 我创建了一个表单,然后将特定表从数据源拖放到表单上,让VS2010为我创建数据表 当我试图使用数据表更改或向数据库添加值时,出现上面列出的错误 ExecuteReader:CommandText属性尚未初始化 根据我之前的研究,不,我没有定义CommandText,也不知道在哪里创建CommandText,因为VS2010创建了所有datatable代码,并且没有在.cs文件中列出它 通过点击f7从表单中获取代码C# ExecuteReader:CommandText属性尚未初始化,c#,visual-studio-2010,ado.net,C#,Visual Studio 2010,Ado.net,我做了几个小时的研究,但似乎没有什么适合我目前的情况 使用:Visual Studio 2010.net 4.0, 语言:C 问题: 我创建了一个表单,然后将特定表从数据源拖放到表单上,让VS2010为我创建数据表 当我试图使用数据表更改或向数据库添加值时,出现上面列出的错误 ExecuteReader:CommandText属性尚未初始化 根据我之前的研究,不,我没有定义CommandText,也不知道在哪里创建CommandText,因为VS2010创建了所有datatable代码,并且没有
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace mineral_monitor.Manual_edits
{
public partial class mineral_stock : Form
{
public mineral_stock()
{
InitializeComponent();
}
private void mineralsBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
this.Validate();
this.mineralsBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.ore_stockDataSet1);
}
private void mineral_stock_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'ore_stockDataSet1.minerals' table.
// You can move, or remove it, as needed.
this.mineralsTableAdapter.Fill(this.ore_stockDataSet1.minerals);
}
}
}
这是通过在数据设计器中手动创建更新字符串来解决的 创建数据源时,VisualStudio会自动为您创建select命令,但不会创建update、insert和delete命令。您必须手动或使用SqlCommandBuilder指定它们。查看链接。CommandText=????请把你的密码寄出去。。CommandType=???适配器负责将命令文本传递给命令对象。因此,您的适配器中可能缺少SelectCommand。@WiktorZychla-当我在数据设计器中查看TableAdapter属性时,它确实声明它有一个Select、Insert和Update命令。我听取了您的建议并查看了该MSDN站点。我做了一些胡闹,现在我得到更新需要一个有效的UpdateCommand,这是一个非常直接的错误。但在我的研究之后,每个人都说CommandString构建器无法构建一些东西来更新表中的所有内容。如何使“保存”按钮更新通过DataGridViewer所做的所有更改?如果您没有一个表,但有一些联接或其他内容,则必须手动指定DataAdapter的UpdateCommand。在其他情况下,SqlCommandBuilder应该自动为您生成更新命令。查看此链接:它是一个表。正如我所说的,我所做的只是从数据源窗口拖放到Windows窗体上,它自动设计了datagridview和修改按钮打开/保存等;我也不太明白你链接我的页面。我已经有一个数据适配器作为MineralStableApter,但是当运行mineralStableApter.Fillthis.ore_stockDataSet1.minerals时,它仍然返回我没有更新命令集。尝试删除所有内容并重新开始…新建winforms项目、添加数据源、选择表或尝试使用其他表,拖放数据集。那么它能工作吗?我创建了一个新的Windows窗体项目并设置了数据连接。当我将表拖放到表单上时,它会生成以下代码:程序似乎在this.tableAdapterManager.UpdateAllthis.ore_stockDataSet处中断;给出update命令未设置错误。