使用 TableAdapters 或以编程方式插入?

Using TableAdapters or programatically to insert?

我正在使用 Visual Studio 2013,想知道使用 TableAdapter 进行查询和 运行 查询与使用 MySqlCommand cmd = new MySqlCommand(); 之间有什么区别。他们肯定是一样的吗?但是,TableAdapter 看起来更安全,因为它可用于停止 SQL 注入。

我想知道这一点,因为对于 TableAdapter,您只需创建一个 SQL 语句,然后调用该语句,传入任何必需的参数。以编程方式完成这一切,您必须实例化 SQL 命令、创建查询、绑定参数、打开连接、执行查询,然后关闭连接。

那么为什么很多人 运行宁 SQL 以编程方式查询而不是使用 TableAdapter 等简单方法?

设置 TableAdapter 的工作量与设置 SqlCommand 的工作量差不多。你没有完全描述它。 TableAdapter 通常用于用户界面中的数据绑定场景,因此任何挂起的 CRUD 操作都可以通过一次调用 Update 来完成。例如,这只是构建数据访问层的不太合适的方法。 并且...假设您实际使用 SqlParameters,SqlCommands 绝对可以防止 SQL 注入。