中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >
深入淺出:ASP.NET CORE

包郵 深入淺出:ASP.NET CORE

作者:周家安
出版社:清華大學出版社出版時間:2024-04-01
開本: 其他 頁數: 552
中 圖 價:¥93.4(7.3折) 定價  ¥128.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

深入淺出:ASP.NET CORE 版權信息

深入淺出:ASP.NET CORE 本書特色

ASP.NET Core是建立在.NET基礎上的Web開發技術,經過幾個版本的迭代,已趨于完善。隨著Blazor的不斷優化,ASP.NET Core能同時勝任Web前端與后端的開發,*終可生成高性能且跨平臺的Web應用程序。本書秉持“學以致用”的理念,內容精練,通俗易懂,以實例的方式闡述知識。讀者可以參考書中實例動手實踐,提高學習效果。本書主要內容包括: 初始化ASP.NET Core應用程序; 依賴注入與服務容器; 應用程序配置與選項模式; HTTP管道與中間件; HTTP狀態存儲; Razor頁面; MVC框架與Web API; 模型綁定; 過濾器與標記幫助器; 靜態文件; SignalR與Blazor; 驗證與授權。 深入論述ASP.NET Core的理論、方法與開發技術!北京郵電大學魏翼飛教授、青島科技大學宋廷強教授、香港科技大學工學院李永剛教授聯袂推薦! 魏翼飛 北京郵電大學電子工程學院副院長《深入淺出:ASP.NET Core》的作者是一位編程愛好者,其在博客上發表的文章風格獨特有趣,經常會抓住一個知識點進行擴展,創作一系列文章,語言精練,代碼簡潔。從博客文章到原創圖書,作者也沿襲了這樣的風格。《深入淺出:ASP.NET Core》涵蓋的ASP.NET Core內容全面,給出的實例項目不復雜,簡單易懂,適合初學者學習。 宋廷強 青島科技大學信息科學技術學院副院長市場上雖然已經有一些ASP.NET Core方面的圖書,但是書中往往缺少實例和可動手實踐的素材。《深入淺出:ASP.NET Core》覆蓋知識體系較為全面,書中很多章節以實例為主,對初學者來說,容易理解和動手實踐,學起來比較輕松。 賈云龍 北京樂搏優聘教育科技咨詢有限公司首席執行官ASP.NET Core借助開源社區的壯大,得到快速發展,這在一定程度上增加了讀者對ASP.NET Core圖書的需求,尤其是編程入門者和開源愛好者的圖書需求。《深入淺出:ASP.NET Core》緊扣ASP.NET Core主題,核心知識明確,未涉及復雜的框架內容,易于入門,推薦初學者閱讀。 李永剛 香港科技大學工學院教授《深入淺出:ASP.NET Core》中理論講解與代碼演示的內容所占比例較為均衡,很適合讀者直接上機,動手實踐。結合配書程序代碼進行學習,讀者能快速獲得成就感。 全新視角剖析 ASP.NET Core 關鍵技術,易學實用。

深入淺出:ASP.NET CORE 內容簡介

ASP.NET Core是微軟推出的跨平臺、開放源代碼的Web開發框架。本書秉持“現學現用”的 原則,知識講解通俗易懂,并配有示例代碼。每個示例都是針對知識點而設計的,代碼量適中, 功能和結構簡單,便于讀者參考學習和擴展改造。 全書共18章。第1章和第2章講述了ASP.NET Core應用程序的初始化過程以及運行環境的設定; 第3章單獨介紹了ASP.NET Core應用程序的設計模式—組件化,即依賴注入技術;第4章和第5 章講述了配置應用程序的方法,包括使用配置文件和選項模式;第6章和第7章講述了HTTP管道和 HTTP狀態存儲;第8~11章涉及Web開發的重點知識:Razor頁面、MVC框架、模型綁定及Web API; 第12章和第13章講述MVC框架的應用擴展,包括過濾器和標記幫助器的使用,以適應實際開發需 求;第14章介紹了靜態文件服務,服務器可向客戶端提供目錄/文件的訪問入口;第15章講述路由 約束;第16章和第17章講述了ASP.NET Core獨有的客戶端技術—SignaIR和Blazor;第18章主要 涉及基本的安全功能,即驗證與授權。 本書適合作為廣大高校、培訓機構.NET課程相關的教材或.NET愛好者的參考書。對于想通過 自學步入編程大門的讀者,也推薦閱讀本書。

深入淺出:ASP.NET CORE 目錄

第 1 章 初始化 ASP.NET Core 應用程序 . 1 1.1 應用程序的啟動過程 ..1 1.2 WebApplicationBuilder 類 ..2 1.3 啟動應用程序.3 1.4 使用 Host 初始化應用程序 4 1.4.1 通用主機 5 1.4.2 示例:簡單的通用主機 .5 1.4.3 Web 主機 7 1.5 設置應用程序的 URL..9 1.5.1 調用 UseUrls()方法 .9 1.5.2 使用 WebApplication 類的 Urls 屬性 .. 10 1.5.3 調用 Run()方法時傳遞 URL .. 10 1.5.4 通過 ServerAddressesFeature 對象設置 URL 11 1.5.5 使用命令行參數 12 1.5.6 使用配置文件. 13 1.5.7 使用環境變量. 13 1.5.8 使用 launchSettings.json 文件 14 1.5.9 Kestrel 服務器的偵聽地址 . 14 1.5.10 通過 HTTP.sys 配置 URL . 15 1.5.11 PreferHostingUrls()方法的作用 .. 15 1.6 應用程序生命周期事件 16 第 2 章 運行環境. 18 2.1 定義運行環境.. 18 2.2 Is{EnvironmentName}擴展方法 . 19 2.3 多運行環境下的配置文件 21 2.4 用于環境篩選的 Razor 標記 23 2.5 運行環境與依賴注入 25 第 3 章 依賴注入. 28 3.1 依賴注入與服務容器 28 3.1.1 ServiceCollection 類 . 31 3.1.2 ServiceProvider 類 32 3.2 .NET 項目中的依賴注入.. 32 3.3 ASP.NET Core 項目中的依賴注入. 33 3.4 構建存在依賴關系的服務 35 3.5 服務的生存期.. 38 3.6 GetService()方法與 GetRequiredService()方法的區別. 41 3.7 注入多個服務實例. 42 3.8 容易被忽略的問題. 46 第 4 章 配置應用程序 48 4.1 配置的基本結構 . 48 4.2 在.NET 應用程序中使用配置 . 49 4.3 在 ASP.NET Core 應用程序中使用配置 .. 51 4.3.1 配置的數據來源 51 4.3.2 查看所有配置信息 51 4.4 IConfigurationBuilder 接口.. 52 4.5 ConfigurationManager 類 . 53 4.6 IConfigurationSource 接口與 IConfigurationProvider 接口 54 4.6.1 自定義擴展點. 55 4.6.2 示例:來自 CSV 文件的配置 56 4.7 JSON 配置 59 4.7.1 示例:訪問 JSON 數組對象.. 62 4.7.2 示例:自動重新加載配置.. 63 4.8 XML 配置 . 64 4.9 環境變量 .. 67 4.9.1 設置環境變量前綴 68 4.9.2 替換默認的 ASPNETCORE_前綴 70 4.9.3 示例:替換環境變量前綴.. 70 4.9.4 分層配置結構. 71 4.10 命令行參數 72 4.11 ini 配置 75 4.12 配置與依賴注入 78 4.12.1 示例:將 IConfiguration 注入 MVC 控制器 78 4.12.2 示例:通過配置選擇哈希算法 .. 79 4.13 鏈接多棵配置樹 82 第 5 章 選項模式. 85 5.1 選項模式概述.. 85 5.2 服務容器的擴展方法 87 5.3 各接口之間的關系. 87 5.3.1 IConfigureOptions接口與 IConfigureNamedOptions接口 .. 87 5.3.2 IPostConfigureOptions接口 .. 88 5.3.3 IValidateOptions接口 . 88 5.3.4 IOptionsFactory接口 .. 89 5.3.5 完整的流程圖. 90 5.4 選項類的封裝接口. 91 5.4.1 示例:在 MVC 控制器中訪問選項類. 92 5.4.2 示例:自動更新選項類 .. 93 5.5 帶名稱的選項組 . 95 5.6 后期配置 .. 98 5.7 選項類的驗證.. 99 5.7.1 內置的驗證方式 . 100 5.7.2 使用數據批注.. 102 5.8 處理帶參數的構造函數 . 105 5.9 直接實現 IOptions 接口 . 108 第 6 章 HTTP 管道 110 6.1 HTTP 管道與中間件 .. 110 6.2 中間件的實現方法.. 110 6.3 通過委托實現中間件 ..111 6.3.1 示例:Use()方法的簡單用法.. 114 6.3.2 HTTP 管道的“短路” . 115 6.3.3 Run()方法 . 116 6.4 通過類實現中間件.. 117 6.4.1 帶參數的中間件 . 118 6.4.2 中間件類與依賴注入 119 6.5 通過 IMiddleware 接口實現中間件 120 6.6 終結點. 121 6.6.1 示例:常見的 HTTP 請求方式 .. 123 6.6.2 示例:同時使用 Razor Pages 和 MVC . 125 6.6.3 為終結點分配名稱. 127 6.6.4 元數據 129 6.7 有條件地執行中間件 . 130 6.7.1 示例:調用包含 user_id 字段的中間件 .. 131 6.7.2 示例:只允許以 POST 方式調用 Web API . 132 第 7 章 HTTP 狀態存儲 ..135 7.1 HTTP 上下文. 135 7.1.1 示例:在中間件中設置響應標頭.. 136 7.1.2 示例:在 Map*()方法中訪問 HTTP 上下文 .. 137 7.1.3 示例:使用 Razor 標記呈現 HTTP 請求標頭 138 7.1.4 示例:在 MVC 中訪問 HTTP 上下文 .. 140 7.2 HTTP 消息頭. 141 7.2.1 HeaderNames 類.. 143 7.2.2 消息頭的分類.. 144 7.2.3 分析復雜消息頭 . 145 7.3 查詢字符串 148 7.3.1 讀取查詢參數.. 149 7.3.2 多值參數 .. 150 7.4 表單數據 151 7.4.1 讀取簡單的表單數據 151 7.4.2 文件上傳 .. 153 7.5 Cookie . 157 7.6 HttpContext 類的 Items 屬性 159 7.7 會話 . 160 7.7.1 ISession 接口 161 7.7.2 設置會話 Cookie 的名稱.. 164 7.7.3 示例:將會話數據存儲到 JSON 文件中 . 164 第 8 章 Razor頁面172 8.1 Razor 頁面的特點 172 8.2 Razor 語法 . 173 8.2.1 兩種表達式 .. 173 8.2.2 代碼塊 174 8.2.3 注釋 175 8.2.4 流程控制 .. 176 8.3 開啟 Razor 頁面功能.. 177 8.4 Razor 頁面文件 178 8.5 頁面文件的搜索路徑 . 179 8.5.1 配置 RazorPagesOptions 選項類 180 8.5.2 便捷的擴展方法 . 180 8.6 頁面路由 181 8.6.1 通過@page 指令設置路由規則.. 181 8.6.2 通過約定模型定義路由規則 .. 182 8.7 頁面模型類 184 8.7.1 頁面自身作為模型類 185 8.7.2 從 PageModel 派生類 185 8.7.3 通過特性類實現頁面模型類 .. 186 8.8 頁面處理程序 187 8.8.1 通用的處理程序 . 188 8.8.2 解決 POST 請求時出現的錯誤 .. 189 8.8.3 使用多個處理程序. 190 8.8.4 通過路由參數選擇處理程序 .. 192 8.8.5 自定義的處理程序模型 193 第 9 章 MVC框架 .199 9.1 MVC 基本概念 . 199 9.2 啟用 MVC 功能 199 9.3 控制器. 200 9.3.1 示例:從 ControllerBase 類派生 203 9.3.2 示例:從 Controller 類派生 205 9.3.3 示例:使用 ControllerAttribute.. 205 9.3.4 示例:使用 Controller 后綴 206 9.3.5 自定義控制器的名稱 207 9.3.6 示例:ControllerNameAttribute 類 207 9.3.7 自定義操作方法的名稱 208 9.3.8 示例:CustActionNameAttribute 類 .. 208 9.3.9 示例:ActionNameAttribute 類 .. 209 9.4 MVC 路由規則 . 210 9.4.1 全局路由規則.. 211 9.4.2 示例:注冊兩條全局路由規則 .. 211 9.4.3 局部路由規則.. 212 9.4.4 IRouteTemplateProvider 接口.. 213 9.4.5 通過實現約定接口定義路由規則.. 214 9.4.6 示例:CustPrefixRouteConvention 類 .. 215 9.5 限制操作方法所支持的 HTTP 請求 .. 217 9.5.1 示例:只支持 HTTP-PUT 請求的操作方法 217 9.5.2 內置特性類 .. 218 9.6 區域 . 220 9.7 視圖 . 221 9.7.1 視圖文件的默認存放路徑 221 9.7.2 自定義視圖的路徑格式 222 9.7.3 布局視圖 .. 225 9.7.4 示例:布局視圖的查找順序 .. 226 9.7.5 示例:配置 Razor Pages 布局視圖的查找路徑 . 229 9.7.6 _ViewImports 與_ViewStart 文件 .. 231 9.7.7 示例:_ViewStart 文件的替換行為 .. 232 9.8 IViewLocationExpander 接口 233 9.8.1 示例:多版本視圖. 234 9.8.2 示例:根據 URL 查詢參數擴展視圖路徑 .. 237 9.8.3 LanguageViewLocationExpander 類 .. 240 9.9 局部視圖 242 9.9.1 示例:成績單.. 243 9.9.2 示例:導航欄.. 246 9.10 視圖組件.. 248 9.10.1 示例:一個簡單的視圖組件.. 249 9.10.2 視圖文件的查找路徑 250 9.10.3 示例:帶參數的視圖組件 .. 251 9.10.4 通過標記幫助器調用視圖組件 . 253 9.10.5 示例:Greeting 視圖組件 254 9.10.6 示例:在 MVC 控制器中調用視圖組件 . 255 9.10.7 兩個特性類 . 255 9.11 識別其他程序集中的控制器.. 256 9.11.1 示例:使用 ApplicationPartAttribute 類 . 256 9.11.2 示例:使用 AddApplicationPart()擴展方法 .. 257 9.11.3 示例:使用 ApplicationPartManager 類 .. 259 第 10 章 模型綁定 .261 10.1 概述 .. 261 10.2 自動綁定 .. 262 10.2.1 示例:計算器. 263 10.2.2 示例:綁定數組類型的數據.. 264 10.2.3 示例:綁定復雜類 266 10.2.4 多個參數的模型綁定 268 10.2.5 示例:綁定 3 個參數 268 10.2.6 字典類型的模型綁定 270 10.2.7 示例:綁定字典數據 270 10.2.8 示例:綁定 IFormCollection 類型 272 10.2.9 示例:MD5 計算器 .. 273 10.2.10 綁定 IFormFile 和 IFormFileCollection 類型 .. 274 10.2.11 示例:上傳一個文本文件 275 10.2.12 示例:上傳多個文件 . 276 10.3 設置模型綁定的來源 278 10.3.1 示例:綁定 HTTP 消息頭 .. 278 10.3.2 示例:從 HTTP 消息正文提取數據. 279 10.3.3 示例:與路由參數綁定 .. 280 10.3.4 示例:FromServices 特性的使用 . 280 10.3.5 示例:混合使用 From*特性類 . 282 10.3.6 示例:將 From*特性類應用于屬性成員 283 10.4 自定義 IValueProvider 接口 284 10.4.1 示例:由自定義字符串提供的值. 285 10.4.2 示例:CookieValueProvider 288 10.5 IModelBinder 接口 292 10.5.1 內置綁定器 . 293 10.5.2 示例:AddressInfoModelBinder 類 .. 294 10.6 BindRequiredAttribute 類與 BindNeverAttribute 類 . 296 10.7 綁定到屬性成員. 299 10.7.1 示例:控制器的屬性綁定 .. 299 10.7.2 示例:PageModel 中的屬性綁定 . 300 10.7.3 示例:CancellationToken 類型的屬性綁定 302 第 11 章 Web API .305 11.1 Web API 基礎 . 305 11.1.1 ControllerBase 類與 Controller 類 . 305 11.1.2 ApiController 特性 306 11.1.3 示例:一個簡單的 Web API .. 306 11.1.4 示例:以 POST 方式提交數據.. 308 11.2 XML 格式 310 11.2.1 示例:常規的 XML 序列化方案 .. 311 11.2.2 示例:使用 XmlDataContractSerializer 方案 314 11.3 選擇響應格式 . 316 11.3.1 示例:通過 Accept 消息頭選擇響應格式.. 316 11.3.2 示例:使用格式過濾器 .. 317 11.4 自定義格式 . 319 11.4.1 示例:CustDataInputFormatter 類 319 11.4.2 示例:BytesToHexOutputFormatter 類 323 11.5 極小 API .. 325 11.5.1 示例:一些簡單的極小 API 例子. 325 11.5.2 示例:在極小 API 上使用數據源特性 327 11.5.3 上傳文件.. 328 11.5.4 示例:直接讀取文件流 .. 328 11.5.5 示例:上傳多個文件 330 11.5.6 IResult 接口. 332 11.5.7 示例:Results 類的使用.. 333 11.6 API 瀏覽功能 . 333 11.6.1 IApiDescriptionGroupCollectionProvider 接口.. 334 11.6.2 示例:列出已定義的 Web API.. 334 11.6.3 API 約定 .. 337 11.6.4 Swagger 框架.. 339 11.6.5 示例:使用 Swagger 生成 API 文檔 340 第 12 章 過濾器 .343 12.1 過濾器的執行過程 343 12.1.1 示例:觀察過濾器的運行順序 . 344 12.1.2 示例:同時實現多個接口.. 348 12.2 過濾器的作用域. 349 12.2.1 示例:全局過濾器 349 12.2.2 示例:特性化的過濾器 .. 350 12.3 在 Razor Pages 中使用過濾器 352 12.3.1 示例:在 Razor 標記頁和頁面模型類上應用過濾器 . 352 12.3.2 示例:在 Razor Pages 中應用全局過濾器 . 353 12.3.3 頁面處理程序的過濾器 .. 354 12.3.4 示例:實現 IPageFilter 接口 . 354 12.4 異步過濾器接口. 355 12.4.1 示例:實現異步授權過濾器.. 356 12.4.2 示例:實現異步資源過濾器.. 356 12.5 IAlwaysRunResultFilter 接口 . 358 12.6 IFilterFactory 接口 360 12.6.1 示例:訪問服務容器中的過濾器 . 360 12.6.2 示例:使用 TypeFilterAttribute 類創建過濾器實例 361 12.6.3 示例:使用 ServiceFilterAttribute 類訪問服務容器中的過濾器 . 363 12.7 過濾器的運行順序 364 12.7.1 示例:過濾器的作用域與運行順序 364 12.7.2 示例:自定義過濾器的運行順序 . 368 12.8 抽象的過濾器特性類 369 12.8.1 示例:重寫 ActionFilterAttribute 類 370 12.8.2 示例:重寫 ExceptionFilterAttribute 類 . 371 第 13 章 標記幫助器.372 13.1 標記幫助器簡介. 372 13.1.1 示例:為標記添加“加粗”功能 373 13.1.2 示例:標記幫助器 . 374 13.1.3 示例:使用標記幫助器設置 HTML 元素的文本樣式 375 13.2 將標記幫助器注冊到服務容器 . 377 13.3 內置的標記幫助器 380 13.3.1 示例:緩存當前時間 380 13.3.2 示例:用
展開全部

深入淺出:ASP.NET CORE 作者簡介

周家安:微軟最有價值專家(MVP),擅長.NET及其相關開發技術,專注于探索簡單實用的編程學習方法。長期在博客園等技術社區分享編程經驗。曾出版《Go語言入門經典》《精通C# 5.0》《C#碼農筆記——從第一行代碼到項目實戰》《Python實戰指南——手把手教你掌握300個精彩案例》等優秀原創科技圖書。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 电脑刺绣_绣花厂家_绣花章仔_织唛厂家-[源欣刺绣]潮牌刺绣打版定制绣花加工厂家 | 合金ICP光谱仪(磁性材料,工业废水)-百科 | 济南ISO9000认证咨询代理公司,ISO9001认证,CMA实验室认证,ISO/TS16949认证,服务体系认证,资产管理体系认证,SC食品生产许可证- 济南创远企业管理咨询有限公司 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 金属清洗剂,防锈油,切削液,磨削液-青岛朗力防锈材料有限公司 | 砖机托板价格|免烧砖托板|空心砖托板厂家_山东宏升砖机托板厂 | 广州中央空调回收,二手中央空调回收,旧空调回收,制冷设备回收,冷气机组回收公司-广州益夫制冷设备回收公司 | 精益专家 - 设备管理软件|HSE管理系统|设备管理系统|EHS安全管理系统 | 西门子伺服控制器维修-伺服驱动放大器-828D数控机床维修-上海涌迪 | 三板富 | 专注于新三板的第一垂直服务平台 | 便携式表面粗糙度仪-彩屏硬度计-分体式粗糙度仪-北京凯达科仪科技有限公司 | 成都离婚律师|成都结婚律师|成都离婚财产分割律师|成都律师-成都离婚律师网 | 磁力抛光研磨机_超声波清洗机厂家_去毛刺设备-中锐达数控 | 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 河北中仪伟创试验仪器有限公司是专业生产沥青,土工,水泥,混凝土等试验仪器的厂家,咨询电话:13373070969 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 东莞ERP软件_广州云ERP_中山ERP_台湾工厂erp系统-广东顺景软件科技有限公司 | 进口消泡剂-道康宁消泡剂-陶氏消泡剂-大洋消泡剂 | 伟秀电气有限公司-10kv高低压开关柜-高低压配电柜-中置柜-充气柜-欧式箱变-高压真空断路器厂家 | 除尘器布袋骨架,除尘器滤袋,除尘器骨架,电磁脉冲阀膜片,卸灰阀,螺旋输送机-泊头市天润环保机械设备有限公司 | 电镀电源整流器_高频电解电源_单脉双脉冲电源 - 东阳市旭东电子科技 | 编织人生 - 权威手工编织网站,编织爱好者学习毛衣编织的门户网站,织毛衣就上编织人生网-编织人生 | 贵州水玻璃_-贵阳花溪闽兴水玻璃厂 | 膜结构_ETFE膜结构_膜结构厂家_膜结构设计-深圳市烨兴智能空间技术有限公司 | 志高装潢官网-苏州老房旧房装修改造-二手房装修翻新 | 减速机_上海宜嘉减速机| 高铝矾土熟料_细粉_骨料_消失模_铸造用铝矾土_铝酸钙粉—嵩峰厂家 | 办公室装修_上海办公室设计装修_时尚办公新主张-后街印象 | 湖州织里童装_女童男童中大童装_款式多尺码全_织里儿童网【官网】-嘉兴嘉乐网络科技有限公司 | 天然鹅卵石滤料厂家-锰砂滤料-石英砂滤料-巩义东枫净水 | 超细|超微气流粉碎机|气流磨|气流分级机|粉体改性机|磨粉机|粉碎设备-山东埃尔派粉体科技 | 厂房出租-厂房规划-食品技术-厂房设计-厂房装修-建筑施工-设备供应-设备求购-龙爪豆食品行业平台 | 微型气象仪_气象传感器_防爆气象传感器-天合传感器大全 | 顶呱呱交易平台-行业领先的公司资产交易服务平台 | [官网]叛逆孩子管教_戒网瘾学校_全封闭问题青少年素质教育_新起点青少年特训学校 | 方源木业官网-四川木门-全国木门专业品牌 | 海外整合营销-独立站营销-社交媒体运营_广州甲壳虫跨境网络服务 焊管生产线_焊管机组_轧辊模具_焊管设备_焊管设备厂家_石家庄翔昱机械 | 山东包装,山东印刷厂,济南印刷厂-济南富丽彩印刷有限公司 | 郑州水质检测中心_井水检测_河南废气检测_河南中环嘉创检测 | 隧道烘箱_隧道烘箱生产厂家-上海冠顶专业生产烘道设备 | 无负压供水设备,消防稳压供水设备-淄博创辉供水设备有限公司 |