如何在TableAdapter(.xsd)中更改CommandTimeout

时间:2019-07-05 13:59:17

标签: c# xsd timeout dataadapter

我有一个版本化的Visual Studio项目,有4个人可以进行修改。

在此项目中,有一个XSD文件,我们在其中加载SQL Server存储过程以在 Reporting Services 中使用。

问题在于某些存储过程需要30秒钟以上的时间,具体取决于参数,并且这些过程已链接到报表,因此,默认情况下,当某个过程耗时30秒以上时,程序将引发异常,指示等待时间达到过期。

我已经搜索了互联网,并指出解决方案是 CommandTimeout 属性:

def static_vars(**kwargs):
    def decorate(func):
        for k in kwargs:
            setattr(func, k, kwargs[k])
        return func
    return decorate


@static_vars(counter=0)
def clicked(event):
    clicked.counter += 1

通过将其放入Designer文件(Myxsd.Designer.cs)中并测试功能,结果令人满意,

重点是,如果我通过设计器向xsd文件中添加新的TableAdapter,则我放置的代码行将被删除,就好像设计器删除了所有代码并将其放回原处。

我试图将 Timeout 属性放在连接字符串(app.config)中,以控制所有过程的超时:

this.Adapter.SelectCommand.CommandTimeout = 0;

清理,编译,我通过设计器XSD验证了连接字符串是否与上面相同,但是超时问题仍然存在。

对此有什么解决办法吗?

0 个答案:

没有答案