U二開基礎(chǔ)培訓(xùn)_第1頁
U二開基礎(chǔ)培訓(xùn)_第2頁
U二開基礎(chǔ)培訓(xùn)_第3頁
U二開基礎(chǔ)培訓(xùn)_第4頁
U二開基礎(chǔ)培訓(xùn)_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

VS.NET開發(fā)基礎(chǔ)培訓(xùn)(C#)U8客戶化開發(fā)及管理部馮優(yōu)波fengyb@62438429課程安排Unit1C/S架構(gòu)與B/S架構(gòu)Unit2示例演示Unit3軟件三層架構(gòu)Unit4VS.NET快速開發(fā)工具Unit5示例演示總結(jié)Unit1C/S架構(gòu)與B/S架構(gòu)C/S架構(gòu)介紹

C/S(Client/Server)架構(gòu),即大家熟知的客戶機(jī)和服務(wù)器結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到Client端和Server端來實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。目前很多應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用發(fā)展,Web和Client/Server應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。

傳統(tǒng)的C/S體系結(jié)構(gòu)雖然采用的是開放模式,在特定的應(yīng)用中無論是Client端還是Server端都還需要特定的軟件支持。由于沒能提供用戶真正期望的開放環(huán)境,C/S結(jié)構(gòu)的軟件需要針對(duì)不同的操作系統(tǒng)系統(tǒng)開發(fā)不同版本的軟件,加之產(chǎn)品的更新?lián)Q代十分快,已經(jīng)很難適應(yīng)百臺(tái)電腦以上局域網(wǎng)用戶同時(shí)使用。而且代價(jià)高,效率低。

C/S代表性產(chǎn)品:U8-ERPUnit1C/S架構(gòu)與B/S架構(gòu)B/S架構(gòu)介紹

B/S(Browser/Server)架構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。

以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Internet/Intranet模式下數(shù)據(jù)庫應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全。特別是在JAVA和.NET等高級(jí)語言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效。B/S代表性產(chǎn)品:U9-ERP/NCUnit1C/S架構(gòu)與B/S架構(gòu)C/S和B/S之比較

C/S和B/S是當(dāng)今世界開發(fā)模式技術(shù)架構(gòu)的兩大主流技術(shù)。C/S是美國(guó)

Borland公司最早研發(fā),B/S是美國(guó)微軟公司研發(fā)。目前,這兩項(xiàng)技術(shù)以被世界各國(guó)所掌握,國(guó)內(nèi)公司以C/S和B/S技術(shù)開發(fā)出產(chǎn)品也很多。這兩種技術(shù)都有自己一定的市場(chǎng)份額和客戶群。C/S和B/S對(duì)比:名稱C/SB/S應(yīng)用范圍建立在局域網(wǎng)的基礎(chǔ)上的建立在廣域網(wǎng)的基礎(chǔ)上的硬件環(huán)境一般建立在專用的網(wǎng)絡(luò)上,小范圍里的網(wǎng)絡(luò)環(huán)境,局域網(wǎng)之間再通過專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù)建立在廣域網(wǎng)之上的,不必是專門的網(wǎng)絡(luò)硬件環(huán)境,例如電話上網(wǎng),租用設(shè)備,信息自己管理,有比C/S更強(qiáng)的適應(yīng)范圍,一般只要有操作系統(tǒng)和瀏覽器就行Unit1C/S架構(gòu)與B/S架構(gòu)C/S和B/S對(duì)比:名稱C/SB/S安全要求一般面向相對(duì)固定的用戶群,對(duì)信息安全的控制能力很強(qiáng)。一般高度機(jī)密的信息系統(tǒng)采用C/S結(jié)構(gòu)適宜,可以通過B/S發(fā)布部分可公開信息。建立在廣域網(wǎng)之上,對(duì)安全的控制能力相對(duì)弱,面向是網(wǎng)絡(luò)的用戶群。程序架構(gòu)程序可以更加注重流程,可以對(duì)權(quán)限多層次校驗(yàn),對(duì)系統(tǒng)運(yùn)行速度可以較少考慮。對(duì)安全以及訪問速度的多重的考慮,建立在需要更加優(yōu)化的基礎(chǔ)之上。系統(tǒng)維護(hù)程序必須整體考察,處理出現(xiàn)的問題以及系統(tǒng)升級(jí)難,維護(hù)工作量大。發(fā)布的組件可以個(gè)別的更換,實(shí)現(xiàn)系統(tǒng)的無縫升級(jí)。系統(tǒng)維護(hù)開銷減到最小,用戶從網(wǎng)上自己下載安裝就可以實(shí)現(xiàn)升級(jí)。Unit1C/S架構(gòu)與B/S架構(gòu)C/S和B/S對(duì)比:名稱C/SB/S處理問題程序可以處理用戶面固定,并且在相同區(qū)域,安全要求高的需求,與操作系統(tǒng)相關(guān),應(yīng)該都是相同的系統(tǒng)。建立在廣域網(wǎng)上,面向不同的用戶群,分散地域,這是C/S無法作到的,與操作系統(tǒng)平臺(tái)關(guān)系最小。用戶接口多是建立在Window平臺(tái)上,表現(xiàn)方法有限,對(duì)程序員普遍要求較高。建立在瀏覽器上,有更加豐富和生動(dòng)的表現(xiàn)方式與用戶交流,并且大部分難度減低,降低開發(fā)成本。信息流程序一般是典型的中央集權(quán)的機(jī)械式處理,交互性相對(duì)低。信息流向可變化,

B-B、

B-C、

B-G等信息流向的變化,更象交易中心。課程安排Unit1C/S架構(gòu)與B/S架構(gòu)Unit2示例演示Unit3軟件三層架構(gòu)Unit4VS.NET快速開發(fā)工具Unit5示例演示總結(jié)Unit2示例演示VS2005創(chuàng)建C/S用戶登錄實(shí)例Unit2示例演示C/S用戶登錄實(shí)例在新建的窗體上加入相關(guān)控件,注意“密碼”框的屬性設(shè)置Unit2示例演示C/S用戶登錄代碼privatevoidbtnOK_Click(objectsender,EventArgse)

{………….//查詢sqlStringBuilderstrSql=newStringBuilder();strSql.Append("selectCount(*)asCCfromLogin");strSql.Append("whereUserName=@UserNameandPassWord=@PassWord");

//參數(shù)SqlParameter[]parameters={newSqlParameter("@UserName",SqlDbType.VarChar,50),newSqlParameter("@PassWord",SqlDbType.VarChar,50)};parameters[0].Value=this.txtUserName.Text;parameters[1].Value=this.txtPassWord.Text;//DB鏈接DbHelperSQL.connectionString="server=(local);uid=sa;pwd=ufida;Trusted_Connection=no;database=demo";

//返回結(jié)果集DataSetds=DbHelperSQL.Query(strSql.ToString(),parameters);

//處理結(jié)果if(ds.Tables[0].Rows.Count>0)

{if(int.Parse(ds.Tables[0].Rows[0]["CC"].ToString())>0)

{MessageBox.Show("登錄成功!");

}else

{MessageBox.Show("非法用戶!");

}

}else

{MessageBox.Show("非法用戶!");

}

Unit2示例演示MSSQLHELPERSqlHelper數(shù)據(jù)訪問組件是Microsoft提供的開源的數(shù)據(jù)訪問助手,其封裝很嚴(yán)密,且應(yīng)用簡(jiǎn)單,它是一組通用的訪問數(shù)據(jù)庫的代碼,在所有項(xiàng)目中都可以用,一般不需要修改。主要功能:(1)執(zhí)行不返回?cái)?shù)據(jù)的T-Sql命令。例如增加、修改、刪除信息等。(2)返回一組數(shù)據(jù)。例如一個(gè)記錄集:DataSet等。(3)返回記錄指針DataReader。(4)緩存參數(shù)列表。在執(zhí)行一條語句時(shí),可能有多個(gè)參數(shù),為了提高速度,將參數(shù)緩存。(5)讀取緩存的參數(shù)。Unit2示例演示VS2005創(chuàng)建B/S用戶登錄實(shí)例Unit2示例演示B/S用戶登錄實(shí)例在新建的頁面上加入相關(guān)控件,注意“密碼”框的屬性設(shè)置Unit2示例演示B/S用戶登錄代碼privatevoidbtnOK_Click(objectsender,EventArgse)

{………….//查詢sqlStringBuilderstrSql=newStringBuilder();strSql.Append("selectCount(*)asCCfromLogin");strSql.Append("whereUserName=@UserNameandPassWord=@PassWord");

//參數(shù)SqlParameter[]parameters={newSqlParameter("@UserName",SqlDbType.VarChar,50),newSqlParameter("@PassWord",SqlDbType.VarChar,50)};parameters[0].Value=this.txtUserName.Text;parameters[1].Value=this.txtPassWord.Text;//DB鏈接DbHelperSQL.connectionString="server=(local);uid=sa;pwd=ufida;Trusted_Connection=no;database=demo";

//返回結(jié)果集DataSetds=DbHelperSQL.Query(strSql.ToString(),parameters);

//處理結(jié)果if(ds.Tables[0].Rows.Count>0)

{if(int.Parse(ds.Tables[0].Rows[0]["CC"].ToString())>0)

{Page.ClientScript.RegisterStartupScript(Page.GetType(),"message","<scriptlanguage='javascript'defer>alert('登錄成功!');</script>");

}else

{

Page.ClientScript.RegisterStartupScript(Page.GetType(),“message”,“<scriptlanguage=‘javascript’defer>alert(‘非法用戶!');</script>");

}

}else

{MessageBox.Show("非法用戶!");

}

課程安排Unit1C/S架構(gòu)與B/S架構(gòu)Unit2示例演示Unit3軟件三層架構(gòu)Unit4VS.NET快速開發(fā)工具Unit5示例演示總結(jié)Unit3軟件三層架構(gòu)三層架構(gòu)介紹

軟件系統(tǒng)最常用的一般會(huì)講到三層架構(gòu),其實(shí)就是將整個(gè)業(yè)務(wù)應(yīng)用劃分為表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層等,有的還要細(xì)一些,通過分解業(yè)務(wù)細(xì)節(jié),將不同的功能代碼分散開來,更利于系統(tǒng)的設(shè)計(jì)和開發(fā),同時(shí)為可能的變更提供了更小的單元,十分有利于系統(tǒng)的維護(hù)和擴(kuò)展。

常見的三層架構(gòu)基本包括如下幾個(gè)部分,如圖:數(shù)據(jù)訪問層DAL:用于實(shí)現(xiàn)與數(shù)據(jù)庫的交互和訪問,從數(shù)據(jù)庫獲取數(shù)據(jù)或保存數(shù)據(jù)到數(shù)據(jù)庫的部分。業(yè)務(wù)邏輯層BLL:業(yè)務(wù)邏輯層承上啟下,用于對(duì)上下交互的數(shù)據(jù)進(jìn)行邏輯處理,實(shí)現(xiàn)業(yè)務(wù)目標(biāo)。表示層UI:主要實(shí)現(xiàn)和用戶的交互,接收用戶請(qǐng)求或返回用戶請(qǐng)求的數(shù)據(jù)結(jié)果的展現(xiàn),而具體的數(shù)據(jù)處理則交給業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層去處理。Unit3軟件三層架構(gòu)復(fù)雜三層架構(gòu)介紹

日常開發(fā)的很多情況下為了復(fù)用一些共同的東西,會(huì)把一些各層都用的東西抽象出來。如我們將數(shù)據(jù)對(duì)象實(shí)體和方法分離,以便在多個(gè)層中傳遞,例如稱為Model。一些共性的通用輔助類和工具方法,如數(shù)據(jù)校驗(yàn)、緩存處理、加解密處理等,為了讓各個(gè)層之間復(fù)用,也單獨(dú)分離出來,作為獨(dú)立的模塊使用,例如稱為Common。

演變后的三層架構(gòu)基本包括如下幾個(gè)部分,如圖:數(shù)據(jù)庫訪問類是對(duì)ADO.NET的封裝,封裝了一些常用的重復(fù)的數(shù)據(jù)庫操作。如微軟的企業(yè)庫SQLHelper.cs,DBUtility/DbHelperSQL等,為DAL提供訪問數(shù)據(jù)庫的輔助工具類。課程安排Unit1C/S架構(gòu)與B/S架構(gòu)Unit2示例演示Unit3軟件三層架構(gòu)Unit4VS.NET快速開發(fā)工具Unit5示例演示總結(jié)Unit4VS.NET快速開發(fā)工具動(dòng)軟.Net代碼生成器

動(dòng)軟.Net代碼生成器是一款為C#數(shù)據(jù)庫程序員設(shè)計(jì)的自動(dòng)代碼生成器,Codematic生成的代碼基于面向?qū)ο蟮乃枷牒腿龑蛹軜?gòu)設(shè)計(jì),結(jié)合了Petshop中經(jīng)典的思想和設(shè)計(jì)模式,融入了工廠模式,反射機(jī)制等等一些思想。主要實(shí)現(xiàn)在對(duì)應(yīng)數(shù)據(jù)庫中表的基類代碼的自動(dòng)生成,包括生成屬性、添加、修改、刪除、查詢、存在性、Model類構(gòu)造等基礎(chǔ)代碼片斷,支持不同3種架構(gòu)代碼生成,使程序員可以節(jié)省大量機(jī)械錄入的時(shí)間和重復(fù)勞動(dòng),而將精力集中于核心業(yè)務(wù)邏輯的開發(fā)。Codematic同時(shí)提供便捷的數(shù)據(jù)庫管理功能和多項(xiàng)其他開發(fā)工作中常用到的輔助工具功能,可以很方便輕松地進(jìn)行項(xiàng)目開發(fā),讓開發(fā)變得輕松而快樂!界面視圖:Unit4動(dòng)軟.Net代碼生成器主要功能自動(dòng)生成C#代碼:可以生成3種不同架構(gòu)的代碼:簡(jiǎn)單三層結(jié)構(gòu);基于工廠模式三層架構(gòu);自定義結(jié)構(gòu)模版。

數(shù)據(jù)庫服務(wù)器管理:類似SQLServer2005的管理界面,方便平常在代碼編輯的時(shí)候想查看數(shù)據(jù)庫的信息,并且可以很直觀的查看字段類型,長(zhǎng)度,主鍵,默認(rèn)值等詳細(xì)信息,省去了在代碼和數(shù)據(jù)庫管理器之間的來回切換,方便快捷。自動(dòng)生成存儲(chǔ)過程和SQL腳本。自動(dòng)生成數(shù)據(jù)庫文檔。Web項(xiàng)目文件

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論