的多層架構主要是為了解決數據層
protected int RunProcedure(string storedProcName
rowsAffected )
{
int result;
Connection
SqlCommand command = BuildIntCommand( storedProcName
rowsAffected = command
result = (int)command
Connection
return result;
}
protected SqlDataReader RunProcedure(string storedProcName
{
SqlDataReader returnReader;
Connection
SqlCommand command = BuildQueryCommand( storedProcName
command
returnReader = command
//Connection
return returnReader;
}
protected DataSet RunProcedure(string storedProcName
string tableName )
{
DataSet dataSet = new DataSet();
Connection
SqlDataAdapter sqlDA = new SqlDataAdapter();
sqlDA
sqlDA
Connection
return dataSet;
}
protected void RunProcedure(string storedProcName
DataSet dataSet
{
Connection
SqlDataAdapter sqlDA = new SqlDataAdapter();
sqlDA
sqlDA
Connection
道理很簡單
其次是要建立邏輯層
最後是表示層
數據在各個層次之間的關系相對獨立
獨立性
對於表示層之外的幾個層
連續性
數據在傳遞過程中有較強的連續性
表示層
DataSet UserInforRow = ObjectUser
邏輯層
public DataSet GetUserInfor(int UserID)
{
SqlParameter[] parameters ={new SqlParameter(
parameters[
using(DataSet UserInfor = RunProcedure(
{
return UserInfor;
}
這樣可以編譯通過
但是錯誤出在
對於這個問題的解決方案有兩種
SqlParameter[] parameters ={new SqlParameter(
更改表示層要改為
DataSet UserInforRow = ObjectUser
兩個方案中顯然是更改表示層比較合理
其他類似的變量傳遞和引用也遇到類似問題
From:http://tw.wingwit.com/Article/program/net/201311/12204.html