如何在stylecop中定义规则以强制开发人员关闭SQLDataReader()或连接?
如果还有其他解决方案,那么请建议。
所需的解决方案是强制开发人员关闭sqldatareader
或
我们可以在DAL或任何其他apporach中进行任何其他更改,以确保datareader的连接关闭..
答案 0 :(得分:0)
如何使用委托?我不知道您的确切架构,但我们已经将ExecuteReader()
方法包装在我们自己的方法中,让我们称之为ExecuteReaderWrapper()
,以确保使用正确的数据库连接等。ExecuteReaderWrapper()
基本上只是返回SqlDataReader
返回的ExecuteReader()
。
现在我们不使用这些方法编写任何自定义代码(我们使用DataSets
代替),因此我们没有您遇到的问题。但是,一种选择是将ExecuteReaderWrapper()
更改为期望代理而不是返回SqlDataReader
。然后ExecuteReaderWrapper()
将SqlDataReader
传递给委托,然后传递给所有必需的清理。然后开发人员根本不用担心关闭。