循环通过表适配器方法检查是否标量

时间:2014-04-29 15:48:35

标签: c# visual-studio

目前我有大约30个表适配器都有查询" InsertAndReturnId"。哪个是插入查询,返回最后插入的id。为了实现这一点,我必须将查询的执行模式设置为Scalar(在visual studio Dataset Designer中)。

问题是,当我编辑或保存该查询时,它会将执行模式重置为非查询,有时我忘记将其更改回来。

这是一个真正的痛苦,因为它们都返回一个int值(并且大部分代码只是将返回值强制转换为int)

我查看了Visual Studio生成的内容,它看起来取决于它将添加的执行属性:

returnValue = command.ExecuteScalar();

或者

   int returnValue = this.Adapter.UpdateCommand.ExecuteNonQuery();

我不愿意每次使用这些方法并添加支票。或者为每个表适配器添加检查条件。

是否可以循环(在编译期间或在运行时)由visual studio生成的表适配器并检查它们是作为标量还是非查询执行?

类似的东西:

foreach(var tableAdapterMethod in tableAdapterMethods)
{
    if(tableAdapterMethod.Name == "InsertAndReturnId")
    {
       if(tableAdapterMethod.ExecuteType != "Scalar")
       {
            // throw warning and stop further execution.
        }
     }
 }

0 个答案:

没有答案