TADOStoredProc alternative for C#

本文关键字:for alternative TADOStoredProc | 更新日期: 2023-09-27 18:33:19

我已经为Delphi开发了一段时间,并且已经习惯了TADOStoredProc来处理存储过程。Embarcadero的Delphi IDE做了很多好事,比如自动获取所有参数自动生成StoredProc对象的属性以访问返回类型。所有这些都发生在设计时。

我最近切换到C#和Visual Studio 2013,我没有看到任何这些不错的功能。我必须手动添加代码中的所有参数并访问返回数据,我必须使用 DataRow 对象。Visual Studio(MS或第三方(中有没有像TADOStoredProc这样的好功能?

我目前正在这样做

SqlConnection sc = new SqlConnection(connectionString);
SqlCommand com = new SqlCommand("StorePrc", sc);
com.CommandType = System.Data.CommandType.StoredProcedure;
com.Parameters.AddWithValue("@id", 1);
using (SqlDataReader sdr = com.ExecuteReader())
{
     ...
}

提前致谢

TADOStoredProc alternative for C#

在花了很多时间之后,我得出结论,没有很好的方法可以做到这一点。您可以对其进行设置,以便使用相同类型的对象获得相同的结果,但这种方式非常混乱且维护起来很糟糕。这是我的建议。

  1. 首先创建存储过程。用于插入、更新、删除和选择
  2. 关注这篇文章 -> http://msdn.microsoft.com/en-us/library/bb163707.aspx。

在此步骤结束时,您应该有一个数据集,其中包含所选存储过程的返回参数,以及一个带有 Fill 和 GetData 方法的表适配器

  1. 在继续之前点击构建
  2. 创建新表单。在 DataGridView、数据集(刚刚创建的数据集(、TableAdapter(刚刚创建的数据集(、TableAdapterManager(刚刚创建的数据集(、BindingSource 和 ButtonNavigator 上拖动(从工具箱中(
  3. 在属性浏览器窗口中为对象设置以下属性

    • 绑定源:数据源 = 数据集,数据成员 = 选择存储的过程
    • 表适配器
    • 管理器:应引用正确的表适配器
    • DataGridView: DataSoruce = bindingSource
    • 按钮导航器:数据源 = 绑定源
  4. 网格应自动生成数据集中的列。(Franlky自动生成的列完全没用,我建议关闭该功能并自己执行此操作(

  5. 刷新您需要执行的数据

    tableAdapter.Fill(dataset, ...选择存储的过程参数...

  6. 要保存网格中的更改,您需要执行

    tableAdapterManager.UpdateAll(dataset(;

这与我以前在德尔福的做法完全不同。在某些方面它更好,在某些方面它更糟;这只是你必须处理的。我希望这将来帮助将来的某人(可能是我(