2010-10-01 131 views
1

我收到錯誤ExecuteReader:連接屬性尚未初始化。下面是我使用的代碼。錯誤'連接屬性尚未初始化'

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 

回答

2

this._connection必須未初始化。

您需要爲我們發佈更多相關的代碼才能確定。

+0

this._connection我們在我們的代碼中使用了n次,只有這是我得到的錯誤地址 – Pradeep 2010-10-01 12:56:27

+0

@Pradeep - 它仍然可能是其他用途是在對象初始化之後,你的是隻有在初始化之前嘗試使用它的情況。 – 2010-10-01 12:57:49

+0

是的,我得到了,你是對的 – Pradeep 2010-10-01 13:08:23

1

我的this._connection是空的......你是否證實情況並非如此?

documentation並沒有說如果連接爲空,構造函數會拋出一個異常,所以我的猜測是它允許你傳遞null,希望你會在後面明確地設置Command屬性,如果是的話。

0

您需要檢查Connection對象,並且需要確保其ConnectionString屬性不爲NULL。

相關問題