亮劍.NET

出版時(shí)間:2009-3  出版社:電子工業(yè)出版社  作者:呂高旭 編著;陳酉玫,李楊,王煥 改編  頁數(shù):450  字?jǐn)?shù):649600  
Tag標(biāo)簽:無  

前言

ASP.NET網(wǎng)站開發(fā)技術(shù)與數(shù)據(jù)庫訪問操作脫不了關(guān)系,如何利用ADO.NET技術(shù),通過類的設(shè)計(jì)建立分層架構(gòu),發(fā)展業(yè)務(wù)級(jí)的數(shù)據(jù)庫系統(tǒng)網(wǎng)站,是本書的重點(diǎn)課題。很多開發(fā)人員學(xué)習(xí)ASP.NET已經(jīng)有一段時(shí)日,卻不知道用好ASP.NET的關(guān)鍵其實(shí)在類的設(shè)計(jì),類幾乎就是構(gòu)成整個(gè)Web應(yīng)用程序的核心。理清這一點(diǎn),并且進(jìn)一步提供具體的實(shí)現(xiàn)示范,是本書要帶領(lǐng)讀者體驗(yàn) ASP.NET 網(wǎng)站開發(fā)設(shè)計(jì)最重要的目標(biāo)。ASP.NET強(qiáng)悍技術(shù)的本質(zhì),完全根基于面向?qū)ο蟮念愃M成的.NET平臺(tái),而非那些功能華麗的控件與通過簡(jiǎn)單的鼠標(biāo)拖曳設(shè)置即可輕易完成的數(shù)據(jù)綁定網(wǎng)頁技術(shù)。本書的主要目的是希望通過各章精心設(shè)計(jì)的課程,讓已經(jīng)有了一些基礎(chǔ)的讀者,從對(duì)ASP.NET強(qiáng)大功能的迷茫中解脫出來,從本質(zhì)著手,了解利用ASP.NET這門技術(shù)開發(fā)商業(yè)網(wǎng)站的實(shí)際方法。ASP.NET是一門架構(gòu)在.NET平臺(tái)上的動(dòng)態(tài)服務(wù)器數(shù)據(jù)庫網(wǎng)站開發(fā)技術(shù),想要發(fā)揮好數(shù)據(jù)庫的功能,了解ADO.NET是基本的功夫,因此我們從ADO.NET開始為本書的學(xué)習(xí)課程拉開序幕,逐步討論如何以ASP.NET網(wǎng)頁為界面,通過ADO.NET相關(guān)類的應(yīng)用,與后端數(shù)據(jù)庫進(jìn)行綁定,建立各種數(shù)據(jù)訪問功能網(wǎng)頁。有了ADO.NET的基礎(chǔ),讀者很快會(huì)進(jìn)入以類為基礎(chǔ)的分層架構(gòu)設(shè)計(jì),再通過數(shù)據(jù)集設(shè)計(jì)師與類圖的輔助,幫助我們快速建立基本的數(shù)據(jù)訪問功能,完成中間層的類程序設(shè)計(jì)。接下來則帶領(lǐng)讀者了解通用的網(wǎng)頁接口設(shè)計(jì)方法,說明HTML的相關(guān)技術(shù)如何被運(yùn)用在ASP.NET的網(wǎng)站設(shè)計(jì)當(dāng)中,以及各種數(shù)據(jù)接口的使用時(shí)機(jī),最后將這些技術(shù)集成在一起。我們希望具備ASP.NET基礎(chǔ)能力的入門讀者,經(jīng)過相關(guān)課程的洗禮之后,可以了解構(gòu)筑商業(yè)網(wǎng)站所需的技術(shù)輪廓,同時(shí)具備開發(fā)大型商業(yè)網(wǎng)站的基礎(chǔ)能力,逐步邁向?qū)I(yè)的開發(fā)人員之路。ASP.NET是一個(gè)龐大的技術(shù)體系,本書僅是一個(gè)起點(diǎn)。到目前為止,它的相關(guān)技術(shù)還在不斷發(fā)展中,不管未來的ASP.NET將呈現(xiàn)什么樣的面貌,可以肯定的是,只要.NET平臺(tái)存在的一天,本書所談的技術(shù)內(nèi)容,均會(huì)是構(gòu)造ASP.NET商業(yè)網(wǎng)站最重要的基石。除非推翻.NET的革命到來,否則在可以預(yù)見的未來,我們所看到的,將只是新功能的不斷累積,而非基礎(chǔ)架構(gòu)的改變,AJAX如此,Silverlight如此,LINQ更是如此。面對(duì)層出不窮的新技術(shù),沒有良好的基礎(chǔ)與正確的方向,開發(fā)人員將很快陷入泥沼無法脫身,最終被一波波的技術(shù)狂潮所吞噬,這也是我們最不愿意見到的狀況。身為技術(shù)圖書的作者,尤其是進(jìn)階書籍,我們有責(zé)任為讀者理清技術(shù)的本質(zhì),而非持續(xù)在一堆華麗的技術(shù)表象層面上打轉(zhuǎn),雖然這是每一位入門讀者必經(jīng)的過程,但是我們衷心希望您能從這個(gè)階段盡快跳脫出來,從類的設(shè)計(jì)開始著手,為自已打造璀璨的開發(fā)人員之路。最后,我們要說的是,要學(xué)好ASP.NET,必須學(xué)會(huì)先將ASP.NET放在一邊,先了解類設(shè)計(jì)與OO(面向?qū)ο螅┰?,善?NET Framework提供的類庫。具備這些關(guān)鍵能力后,ASP.NET之路才會(huì)走得順暢。作者的Blog(www.kangting.tw)中,不只一次這樣提醒,這也是建議ASP.NET開發(fā)人員同時(shí)研讀《Visual C# 2005精要剖析》的主要原因,因?yàn)?,“魔鬼都在《Visual C# 2005 精要剖析》這本書里”。

內(nèi)容概要

本書寫給具備入門基礎(chǔ)的ASP.NET網(wǎng)站開發(fā)設(shè)計(jì)人員,學(xué)習(xí)如何通過多層式的架構(gòu)設(shè)計(jì),從ADO.NET開始,建立動(dòng)態(tài)的數(shù)據(jù)庫網(wǎng)站系統(tǒng)。課程內(nèi)容的主要目標(biāo)在于提供一個(gè)完整的學(xué)習(xí)藍(lán)圖,讓讀者了解如何從無到有,建構(gòu)一個(gè)可以真正上線運(yùn)作的商業(yè)網(wǎng)站雛形。內(nèi)容包括:網(wǎng)站框架設(shè)計(jì)、Web數(shù)據(jù)庫應(yīng)用程序與ADO.NET、DataSet與數(shù)據(jù)綁定、中間層架構(gòu)與類設(shè)計(jì)、ObjectDataSource與數(shù)據(jù)集設(shè)計(jì)師、UI表現(xiàn)層、會(huì)員管理的驗(yàn)證與授權(quán)、一個(gè)完整的示例、利用緩存技術(shù)提升網(wǎng)站性能、通過健康監(jiān)視系統(tǒng)監(jiān)控網(wǎng)站運(yùn)行等。配套光盤中附贈(zèng)本書所有案例的源程序文件。    本書適合具備基礎(chǔ)能力的ASP.NET入門讀者閱讀。    本書繁體字版名為《ASP.NET商業(yè)級(jí)資料庫網(wǎng)站開發(fā)實(shí)務(wù)》,由統(tǒng)一元?dú)赓Y產(chǎn)管理股份有限公司出版,版權(quán)屬統(tǒng)一元?dú)赓Y產(chǎn)管理股份有限公司所有。本中文簡(jiǎn)體字版由統(tǒng)一元?dú)赓Y產(chǎn)管理股份有限公司授權(quán)電子工業(yè)出版社獨(dú)家出版發(fā)行。未經(jīng)本書原版出版者和本書出版者書面許可,任何單位和個(gè)人均不得以任何方式或任何手段復(fù)制或傳播本書的部分或全部內(nèi)容。

作者簡(jiǎn)介

呂高旭,Microsoft 最有價(jià)值專家 (MVP) ,臺(tái)灣計(jì)算機(jī)圖書專職作者,同時(shí)擔(dān)任資訊教育訓(xùn)練中心講師,具備豐富的Microsoft及Oracle系統(tǒng) 開發(fā)經(jīng)驗(yàn),擅長C#、VB、ASP.NET、JSP與Java等技術(shù),自Visual Studio 2005之后,已徹底投入.NET平臺(tái)技術(shù)研究。

書籍目錄

第1章  網(wǎng)站框架設(shè)計(jì) 1.1  鼠標(biāo)設(shè)置的神話 1.2  建立網(wǎng)站——從分層框架開始  1.2.1  關(guān)于網(wǎng)站框架  1.2.2  拆分中間層  1.2.3  關(guān)于表示層 1.3  多層框架 VS. 兩層框架 1.4  網(wǎng)站架構(gòu)之外  1.4.1  關(guān)于性能  1.4.2  運(yùn)行狀況監(jiān)視與系統(tǒng)運(yùn)行監(jiān)控第2章  Web數(shù)據(jù)庫應(yīng)用程序與ADO.NET 2.1  ASP.NET與Web數(shù)據(jù)庫應(yīng)用程序 2.2  剖析ADO.NET 2.3  ADO.NET類框架 2.4  關(guān)于數(shù)據(jù)訪問接口 2.5  連接對(duì)象  2.5.1  連接對(duì)象與數(shù)據(jù)訪問接口  2.5.2  創(chuàng)建連接對(duì)象  2.5.3  配置文件的連接字符串設(shè)置 2.6  連接對(duì)象成員  2.6.1  指定連接字符串屬性  2.6.2  Open與Close  2.6.3  關(guān)于連接管理機(jī)制  2.6.4  再探連接字符串 2.7  Command對(duì)象  2.7.1  數(shù)據(jù)庫訪問與Command對(duì)象  2.7.2  關(guān)于Command 對(duì)象  2.7.3  Command對(duì)象的方法成員  2.7.4  建立與使用Command 對(duì)象 2.8  Command與Parameter對(duì)象  2.8.1  使用Parameter  2.8.2  SqlParameter屬性成員 2.9  DataReader對(duì)象  2.9.1  關(guān)于DataReader對(duì)象  2.9.2  ExecuteReader方法第3章  DataSet與數(shù)據(jù)綁定 3.1  關(guān)于DataAdapter 3.2  剖析DataSet  3.2.1  DataSet與DataAdapter  3.2.2  DataSet對(duì)象的架構(gòu) 3.3  通過DataSet操作數(shù)據(jù)  3.3.1  數(shù)據(jù)導(dǎo)航與檢索  3.3.2  數(shù)據(jù)排序  3.3.3  數(shù)據(jù)更新操作  3.3.4  運(yùn)用DataAdapter更新數(shù)據(jù)源  3.3.5  DataAdapter與SqlCommand 3.4  DataView  3.4.1  運(yùn)用DataView  3.4.2  DataView構(gòu)造函數(shù) 3.5  關(guān)系型DataTable  3.5.1  關(guān)系型數(shù)據(jù)表  3.5.2  關(guān)聯(lián)條件約束  3.5.3  ForeignKeyConstraint對(duì)象與條件約束第4章  中間層架構(gòu)與類設(shè)計(jì) 4.1  網(wǎng)站的分層架構(gòu)  4.1.1  關(guān)于多層式架構(gòu)  4.1.2  網(wǎng)頁實(shí)現(xiàn)方法論  4.1.3  抽離中間層  4.1.4  關(guān)于類設(shè)計(jì)與命名空間  4.1.5  使用類視圖與設(shè)計(jì)工具  4.1.6  類圖的類設(shè)計(jì)功能 4.2  4層式的多層式架構(gòu)  4.2.1  中間層的進(jìn)一步區(qū)分  4.2.2  一個(gè)4層架構(gòu)的簡(jiǎn)單示例第5章  ObjectDataSource與數(shù)據(jù)集設(shè)計(jì)師 5.1  使用ObjectDataSource綁定數(shù)據(jù)源 5.2  使用ObjectDataSource控件  5.2.1  什么是ObjectDataSource  5.2.2  一個(gè)簡(jiǎn)單的ObjectDataSource示例  5.2.3  關(guān)于SelectMethod屬性  5.2.4  ObjectDataSource 的參數(shù)設(shè)置  5.2.5  數(shù)據(jù)更新  5.2.6  通過DetailView建立數(shù)據(jù)編輯功能 5.3  類型化數(shù)據(jù)集與數(shù)據(jù)集設(shè)計(jì)師  5.3.1  數(shù)據(jù)結(jié)構(gòu)描述信息與數(shù)據(jù)集  5.3.2  建立類型化數(shù)據(jù)集  5.3.3  使用TableAdapter類與類型化數(shù)據(jù)集  5.3.4  訪問類型化數(shù)據(jù)集內(nèi)容  5.3.5  自定義新Query  5.3.6  自定義更新功能 5.4  類型化數(shù)據(jù)集與業(yè)務(wù)規(guī)則層連接  5.4.1  嵌入業(yè)務(wù)規(guī)則層  5.4.2  數(shù)據(jù)更新組件  5.4.3  異常處理與更新事件  5.4.4  聲明為數(shù)據(jù)組件第6章  構(gòu)筑UI——實(shí)現(xiàn)表示層 6.1  關(guān)于表示層設(shè)計(jì) 6.2  一致性網(wǎng)頁接口設(shè)計(jì)與導(dǎo)航功能 6.3  主版頁面與版面配置設(shè)計(jì)  6.3.1  關(guān)于主版頁  6.3.2  建立主版頁  6.3.3  MasterPage的網(wǎng)頁組成  6.3.4  配置一個(gè)以上的ContentPlaceHolder 6.4  頁面布局與CSS樣式設(shè)置  6.4.1  、與網(wǎng)頁布局  6.4.2  CSS樣式設(shè)置  6.4.3  建立樣式表單  6.4.4  標(biāo)簽定位樣式的設(shè)置 6.5  導(dǎo)航功能  6.5.1  導(dǎo)航控件  6.5.2  Menu控件  6.5.3  SiteMapDataSource與網(wǎng)站導(dǎo)航項(xiàng)目  6.5.4  關(guān)于SiteMapPath  6.5.5  集成SiteMapPath與Menu控件 6.6  TreeView控件  6.6.1  使用TreeView  6.6.2  動(dòng)態(tài)建立TreeView節(jié)點(diǎn)  6.6.3  TreeView與遞歸運(yùn)算  6.6.4  數(shù)據(jù)庫與遞歸搭配的技巧 6.7  數(shù)據(jù)接口  6.7.1  關(guān)于數(shù)據(jù)接口  6.7.2  關(guān)于樣板  6.7.3  設(shè)計(jì)分頁與空白樣板  6.7.4  FormView數(shù)據(jù)編輯樣板  6.7.5  字段編輯樣板 6.8  綁定業(yè)務(wù)對(duì)象建立關(guān)聯(lián)性數(shù)據(jù)  6.8.1  建立GridView主要/明細(xì)數(shù)據(jù)內(nèi)容  6.8.2  通過下拉列表建立關(guān)系型數(shù)據(jù)瀏覽接口 6.9  DataList與Repeater第7章  會(huì)員管理——驗(yàn)證與授權(quán) 7.1  Forms身份驗(yàn)證與會(huì)員管理 7.2  登錄流程控制 7.3  集成會(huì)員管理機(jī)制  7.3.1  建立用戶賬戶  7.3.2  建立登錄頁面  7.3.3  設(shè)置轉(zhuǎn)向網(wǎng)頁  7.3.4  檢驗(yàn)登錄狀態(tài)  7.3.5  密碼設(shè)置 7.4  會(huì)員登錄管理的程序化控制  7.4.1  Membership類與SqlMembershipProvider  7.4.2  關(guān)于Membership  7.4.3  通過Membership類建立用戶  7.4.4  取得會(huì)員個(gè)人資料  7.4.5  驗(yàn)證用戶  7.4.6  關(guān)于Page.User 屬性  7.4.7  密碼數(shù)據(jù)處理 7.5  角色  7.5.1  角色與授權(quán)  7.5.2  角色的建立與刪除  7.5.3  管理角色成員  7.5.4  套用角色的網(wǎng)站配置設(shè)置  7.5.5  設(shè)置文件夾的授權(quán)配置 7.6  驗(yàn)證授權(quán)與配置設(shè)置  7.6.1  關(guān)于驗(yàn)證  7.6.2  配置設(shè)置與Forms身份驗(yàn)證  7.6.3  彈性運(yùn)用authorization 7.7  接口 7.8  集成現(xiàn)有的數(shù)據(jù)庫系統(tǒng)  7.8.1  集成自定義的數(shù)據(jù)庫系統(tǒng)  7.8.2  數(shù)據(jù)庫聯(lián)機(jī)問題的解決  7.8.3  設(shè)置配置文件第8章  一個(gè)完整的示例 8.1  關(guān)于示例網(wǎng)站 8.2  網(wǎng)站功能導(dǎo)航  8.2.1  課程瀏覽  8.2.2  課程內(nèi)容的編輯管理  8.2.3  課程數(shù)據(jù)添加  8.2.4  會(huì)員數(shù)據(jù)管理  8.2.5  注冊(cè)新會(huì)員 8.3  數(shù)據(jù)庫架構(gòu) 8.4  中間層組件 8.5  網(wǎng)頁文件  8.5.1  網(wǎng)頁文件分類  8.5.2  主版頁  8.5.3  課程瀏覽功能網(wǎng)頁  8.5.4  會(huì)員注冊(cè)與登錄  8.5.5  課程內(nèi)容編輯  8.5.6  角色成員管理  8.5.7  密碼重設(shè)與會(huì)員數(shù)據(jù)查看第9章  利用緩存技術(shù)提升網(wǎng)站性能 9.1  為什么使用緩存 9.2  ASP.NET的緩存機(jī)制種類 9.3  應(yīng)用程序緩存與Cache類  9.3.1  緩存項(xiàng)目的添加與移除  9.3.2  Insert 緩存項(xiàng)目  9.3.3  緩存相依性  9.3.4  設(shè)置緩存的期限原則  9.3.5  優(yōu)先權(quán)  9.3.6  移除緩存項(xiàng)目通知 9.4  網(wǎng)頁輸出緩存  9.4.1  緩存整份網(wǎng)頁  9.4.2  緩存不同的網(wǎng)頁輸出版本 9.5  SQL Server Cache Dependency  9.5.1  SQL Dependency與緩存項(xiàng)目  9.5.2  支持緩存的設(shè)置  9.5.3  SqlCacheDependency類  9.5.4  緩存特定數(shù)據(jù)表  9.5.5  Command指令與SqlCacheDependency第10章  通過健康監(jiān)視系統(tǒng)監(jiān)控網(wǎng)站運(yùn)行 10.1  事件記錄文件  10.1.1  獲取事件記錄文件內(nèi)容  10.1.2  建立事件來源與寫入事件  10.1.3  事件查看器  10.1.4  Visual Studio編輯接口的事件查看功能 10.2  健康監(jiān)視系統(tǒng)的配置項(xiàng)目  10.2.1  配置健康監(jiān)視系統(tǒng)  10.2.2  事件名稱對(duì)應(yīng)與< eventMappings >  10.2.3  健康監(jiān)視系統(tǒng)的接口模型  10.2.4    10.2.5    10.2.6  Web事件記錄處理與接口類 10.3  通過接口進(jìn)行Web消息處理功能的實(shí)現(xiàn)  10.3.1  將事件消息儲(chǔ)存到SQL Server  10.3.2  將事件消息傳遞到E-mail  10.3.3  格式化電子郵件  10.3.4  關(guān)于Web事件的緩沖設(shè)置附錄A  SSMSE A.1  安裝與使用SSMSE A.2  新增數(shù)據(jù)庫 A.3  附加數(shù)據(jù)庫 A.4  數(shù)據(jù)庫的備份與還原

章節(jié)摘錄

1.4 網(wǎng)站架構(gòu)之外網(wǎng)頁或是類這些分層框架元素,構(gòu)成了網(wǎng)站的主體,有了網(wǎng)站之后,接下來開發(fā)人員要關(guān)心的,便是與網(wǎng)站上線運(yùn)行有關(guān)的議題,包含性能與系統(tǒng)運(yùn)行狀況的監(jiān)控操作,這些議題與網(wǎng)站是否能夠順利運(yùn)行有很大的關(guān)系。開發(fā)人員必須在網(wǎng)站完成創(chuàng)建之后,繼續(xù)關(guān)心這些議題,甚至在必要的時(shí)候,對(duì)網(wǎng)站的內(nèi)容進(jìn)行調(diào)整。網(wǎng)站框架設(shè)計(jì)的好壞,決定它先天的體質(zhì),開始運(yùn)行之后,你還必須隨時(shí)關(guān)注它的運(yùn)行狀況,盡可能提升網(wǎng)站的運(yùn)行性能,隨時(shí)監(jiān)控其運(yùn)行狀況。本書最后兩章,針對(duì)這一部分的實(shí)現(xiàn)進(jìn)行了相關(guān)的探討,接下來我們先來熟悉相關(guān)的概念。1.4.1 關(guān)于性能不同于傳統(tǒng)的應(yīng)用程序,以網(wǎng)頁為接口的Web應(yīng)用程序必須通過網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸,因此性能的好壞直接影響網(wǎng)站的運(yùn)行。我們可以通過幾種不同的緩存機(jī)制,提升網(wǎng)站的性能。無論是ASENET內(nèi)置的緩存機(jī)制還是SQLServer內(nèi)部支持的SqlDependency,善用這些緩存機(jī)制,可以讓我們有效地提升網(wǎng)站的系統(tǒng)性能。ASENET內(nèi)置了兩種主要的緩存機(jī)制,分別是網(wǎng)頁等級(jí)的緩存及應(yīng)用等級(jí)的緩存:前者可以讓開發(fā)人員選擇緩存整個(gè)網(wǎng)頁或是部分網(wǎng)頁內(nèi)容;后者則是一個(gè)Cache類,提供緩存對(duì)象的訪問功能,開發(fā)人員可以直接將所要緩存的數(shù)據(jù)儲(chǔ)存到此緩存對(duì)象中,或是從中讀取特定的緩存內(nèi)容。由于緩存內(nèi)容儲(chǔ)存在內(nèi)存中,因此不需再經(jīng)過運(yùn)算處理便能直接取得,對(duì)于某些需要通過底層數(shù)據(jù)源讀取或是經(jīng)過復(fù)雜運(yùn)算所建立的網(wǎng)頁內(nèi)容而言,緩存對(duì)于性能的提升有非常大的幫助。

編輯推薦

《亮劍.NET:ASP.NET商業(yè)級(jí)數(shù)據(jù)庫網(wǎng)站開發(fā)實(shí)戰(zhàn)》特色:·ADO.NET類與斷線數(shù)據(jù)集DataSet剖析·AD0.NET與ASP.NET網(wǎng)頁整合應(yīng)用實(shí)例·多層式架構(gòu)組成探討·業(yè)務(wù)邏輯層的類設(shè)計(jì)·類圖表的建立與設(shè)計(jì)說明·0bjectDataSour’ce數(shù)據(jù)控制項(xiàng)的類綁定設(shè)計(jì)·主版頁、HT札元素、CSS與表示層的建構(gòu)設(shè)計(jì)·數(shù)據(jù)控制項(xiàng)運(yùn)用、樣板設(shè)計(jì)的使用時(shí)機(jī)探討·會(huì)員數(shù)據(jù)表與現(xiàn)有數(shù)據(jù)表的整合·通過完整范例探討多層架構(gòu)系統(tǒng)與會(huì)員管理機(jī)制的整合·效能、緩存類與網(wǎng)頁緩存設(shè)計(jì)·SqICacheDependency與SOLServer數(shù)據(jù)緩存技術(shù)·事件記錄文件與效能監(jiān)視器的運(yùn)用

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    亮劍.NET PDF格式下載


用戶評(píng)論 (總計(jì)5條)

 
 

  •   學(xué)VB的請(qǐng)注意,本書是C#的,我是剛開始學(xué)VB,只好以后再看了
  •   初看這本書的標(biāo)題,懷疑是一線設(shè)計(jì)師所做,后看這個(gè)就是個(gè)基礎(chǔ)教程,沒有絲毫商業(yè)技術(shù)的味,騙子啊,騙子
  •   所以買一本還圖書館的。后來發(fā)現(xiàn)在箱子底下壓著。。。非常囧。
  •   原價(jià)57元的書,還好意思再網(wǎng)上說48.9元,但是為什么收到書之后卻沒有光盤。賣家應(yīng)該清楚這種書沒有光盤里的代碼,初學(xué)者怎么學(xué)習(xí)???這不就是等于買了一堆廢紙嗎?沒東西就沒東西,干嘛掛在網(wǎng)上坑害無辜的消費(fèi)者,卑鄙,無恥,可惡。。。
  •   包裝不是很不錯(cuò)的,印刷排版和包裝一樣精細(xì)

推薦圖書


 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7