您好,登錄后才能下訂單哦!
這篇文章主要講解了“.NET的架構有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“.NET的架構有哪些”吧!
.NET有哪些架構
1)首先還是先來介紹一下實體層吧,就是我們通常所說的Entity
實體就是我們在開發項目過程中所要涉及的一些對象。把這些所要涉及的對象(如:新聞名稱,新聞上傳時間,供稿人,上傳文件的名稱等),都抽象成一個類。使用封裝字段方法,我們可以在視圖層通(主要是視圖層)過實例化對象的方法,來給我們的對象的屬性賦值。
簡單的看一段代碼吧,可能會能夠更加的清楚,明白
publicclassNewsModel
{
//新聞編號
privateintnNewsId;
publicintNNewsId
{
get{returnnNewsId;}
set{nNewsId=value;}
}
//新聞名稱
privatestringstrNewsName;
publicstringStrNewsName
{
get{returnstrNewsName;}
set{strNewsName=value;}
}
}
這里的NewsModel就是一個關于新聞的實體類,其中聲明了兩個private的屬性字段(一定要是private,防止非法賦值),使用public的構造函數,可以在外部給字段賦值。
下面的就是在視圖層來實例化對象,根據需要來給字段賦值,看下面的一段代碼:
NewsModelnewModel=newNewsModel();
newModel.StrNewsName=this.TextBox1.Text;
當然了,這僅僅是一段代碼,其中并沒有給字段nNewsId賦值,因為我把它作為數據庫的id地段,已經設置成自動增長。這樣,就完成了視圖層對實體層的調用。
.NET有哪些架構
2)數據庫訪問層
數據庫庫訪問層,顧名思義,就是主要來完成對數據庫的訪問,等一系類的對數據庫操作的類。為什么要單獨的把對數據庫的操作抽象成一個單獨的類,我個人理解是因為在整個項目的開發過程中,不僅僅需要一次訪問數據庫,而是需要多次,如果每次都編寫數據庫訪問代碼的話,會增加程序員的個人工作量,而且對于代碼的易用性和簡潔性來說肯定是非常糟糕的。當然來可能還有其它的一些優點,我暫時還沒有發現。
既然是對數據庫的操作類,而且對數據庫的操作,無非就是四種:增刪改查。所以一個能提供增刪改查的通用類是必不可少的。這就是我們經常所說的,通用數據庫訪問類(很多的程序員都喜歡把這個類命名為SqlHelper,既然是名字,都是可以隨意起的,只要不違反C#語法命名規范,當然這樣命名也是有好處,就是可以使其他程序員根據類的名稱,大概判斷出這個類是要干什么的)。
當然了,我這次做自己項目的時候,所寫的數據庫訪問類就沒有我上次看周金橋老師的書,然后模仿寫的數據庫訪問類那么的復雜了(《【ASP.NET開發】ASP.NET對SQLServer的通用數據庫訪問類》)。當然了,我這里的數據庫訪問類,主要還是為了簡介,和易用,只要滿足我自己當前項目的需要就可以了,不是每做一個項目,都要寫一個功能全面的數據庫訪問類。
代碼如下,請大家參考,更喜歡哪個訪問類,自己可以根據自己口味,或者需要,直接用也可以:
///
///創建一個SqlHelper的數據庫訪問通用類,完成對數據庫的所有操作
///
publicclassSqlHelper
{
//定義數據庫的連接字符串
privatestaticreadonlystringconnectionString=ConfigurationManager.ConnectionStrings["strConnectionString"].ConnectionString;
///
///創建方法,完成對數據庫的非查詢的操作
///
///
///
///
publicstaticintExecuteNonQuery(stringsql,paramsSqlParameter[]parameters)
{
using(SqlConnectioncon=newSqlConnection(connectionString))
{
con.Open();
using(SqlCommandcmd=con.CreateCommand())
{
cmd.CommandText=sql;
cmd.Parameters.AddRange(parameters);
stringstr=sql;
returncmd.ExecuteNonQuery();
}
}
}
///
///完成查詢的結果值
///
///
///
///
publicstaticintExecuteScalar(stringsql,paramsSqlParameter[]parameters)
{
using(SqlConnectioncon=newSqlConnection(connectionString))
{
con.Open();
using(SqlCommandcmd=con.CreateCommand())
{
cmd.CommandText=sql;
cmd.Parameters.AddRange(parameters);
returnConvert.ToInt32(cmd.ExecuteScalar());
}
}
}
///
///主要執行查詢操作
///
///
///
///
publicstaticDataTableExecuteDataTable(stringsql,paramsSqlParameter[]parameters)
{
using(SqlConnectioncon=newSqlConnection(connectionString))
{
con.Open();
using(SqlCommandcmd=con.CreateCommand())
{
cmd.CommandText=sql;
cmd.Parameters.AddRange(parameters);
SqlDataAdapteradapter=newSqlDataAdapter(cmd);
DataTabledt=newDataTable();
adapter.Fill(dt);
returndt;
}
感謝各位的閱讀,以上就是“.NET的架構有哪些”的內容了,經過本文的學習后,相信大家對.NET的架構有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。