我想在Visual Studio 2013中使用像tutorial这样的SqlCeResultSet。
这是我的Form1类的代码:
private SqlCeConnection _conn;
public Form1()
{
InitializeComponent();
_conn = new SqlCeConnection(@"Data Source = |DataDirectory|\Northwind.sdf");
this.dataGridView1.AutoGenerateColumns = true;
}
private void Form1_Load(object sender, EventArgs e)
{
SqlCeCommand cmd = new SqlCeCommand("SELECT [Employee ID], [Last Name], [First Name], Photo FROM Employees",_conn);
SqlCeResultSet resultSet = cmd.ExecuteResultSet(ResultSetOptions.Scrollable | ResultSetOptions.Updatable);
this.bindingSource1.DataSource = resultSet;
}
现在我尝试完全遵循我的数据库教程并执行以下行:
SqlCeResultSet resultSet = cmd.ExecuteResultSet(ResultSetOptions.Scrollable | ResultSetOptions.Updatable)
抛出此异常:
类型'System.InvalidOperationException'的未处理异常 发生在System.Data.SqlServerCe.dll中的其他信息: ExecuteResultSet:尚未初始化Connection属性。
有关详细信息,这是我的解决方案资源管理器:
我已安装:
任何想法或建议都将受到赞赏。
提前致谢。
更新
问题可能是SQL Server Compact已停止使用Visual Studio 2013,请参阅此question。在这种情况下,我的代码是否存在任何替代方案?
答案 0 :(得分:2)
您错过了教程中的第24步 - 您需要打开连接:
SqlCeCommand cmd = new SqlCeCommand("SELECT [Employee ID], [Last Name], [First Name], Photo FROM Employees",_conn);
_conn.Open();
SqlCeResultSet resultSet = cmd.ExecuteResultSet(ResultSetOptions.Scrollable | ResultSetOptions.Updatable);
this.bindingSource1.DataSource = resultSet;