我收到错误ExecuteReader:Connection属性尚未初始化。下面是我正在使用的代码。
SqlDataReader oReader = new SqlDataReader();
string sSQL = @"
WITH TAB_CTE AS (
SELECT fbominum, fbompart, fparinum, flevel, fsono
FROM sodbom
WHERE fbompart= @fbompart and fsono = @fsono
UNION ALL
SELECT e.fbominum, e.fbompart, e.fparinum, e.flevel, e.fsono
FROM sodbom e
INNER JOIN TAB_CTE ecte ON ecte.fbominum = e.fparinum where e.fsono = @fsono
)
SELECT *
FROM TAB_CTE where fbompart <> @fbompart
";
SqlCommand oCommand = new SqlCommand(sSQL, this._connection);
oCommand.CommandType = System.Data.CommandType.Text;
oCommand.Parameters.Add("@fbompart", ItemSODBOM.fbompart);
oCommand.Parameters.Add("@fsono", ItemSODBOM.SONO);
oReader = oCommand.ExecuteReader();//Here I am getting error
答案 0 :(得分:2)
this._connection
必须取消初始化。
您需要为我们发布更多相关代码才能确定。
答案 1 :(得分:1)
我的猜测是this._connection
为空...你确认那不是这种情况吗?
如果连接为null,documentation并没有说构造函数会抛出异常,所以我的猜测是它允许你传入null,希望你能设置Command
如果属性明确后来属性。
答案 2 :(得分:0)
您需要检查Connection对象,并确保其ConnectionString
属性为NOT NULL。