亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

C# + WPF 打造高效 MES 客戶端:架構(gòu)、設(shè)備通訊與防卡頓實(shí)踐

C# + WPF 打造高效 MES 客戶端:架構(gòu)、設(shè)備通訊與防卡頓實(shí)踐 簡(jiǎn)介一套基于C#與WPF構(gòu)建的MES制造執(zhí)行系統(tǒng)項(xiàng)目源碼面向制造業(yè)信息化開(kāi)發(fā)人員以及希望掌握WPF桌面端與MES業(yè)務(wù)結(jié)合的.NET工程師。壓縮包共315個(gè)文件約11.95MB其中包含88個(gè)cs邏輯代碼、62個(gè)dll引用庫(kù)、45個(gè)xml配置及多個(gè)xaml/baml界面資源同時(shí)帶有mdf/ldf數(shù)據(jù)庫(kù)文件、config配置文件與編譯生成的exe較完整呈現(xiàn)一個(gè)可運(yùn)行的MES客戶端項(xiàng)目。界面預(yù)覽涉及主窗口、庫(kù)位、按鈕樣式、TabControl等組件可借此了解WPF自定義控件樣式、頁(yè)面導(dǎo)航與后臺(tái)綁定的典型做法。已有736人學(xué)習(xí)下載適合用于參考項(xiàng)目分層、數(shù)據(jù)庫(kù)腳本、界面布局與業(yè)務(wù)交互邏輯為自研或二次開(kāi)發(fā)MES系統(tǒng)提供直接素材對(duì)于想驗(yàn)證WPF控件在實(shí)際生產(chǎn)管理系統(tǒng)中的用法也是不錯(cuò)的參考樣例。 MES 系統(tǒng)這幾年在國(guó)內(nèi)制造業(yè)里被反復(fù)提起不管你是給汽配廠、電子組裝車間還是注塑車間做信息化最終都會(huì)落到同一個(gè)問(wèn)題客戶端到底用什么技術(shù)棧來(lái)做。我的答案很直接C# WPF。這不是什么趕時(shí)髦的選擇而是從設(shè)備對(duì)接、現(xiàn)場(chǎng)部署、操作習(xí)慣、開(kāi)發(fā)效率幾個(gè)維度比下來(lái)它確實(shí)非常適合 MES 這個(gè)場(chǎng)景。這篇文章不繞彎子直接把我在 MES 項(xiàng)目里搭建 C# WPF 系統(tǒng)的完整思路、模塊梳理、設(shè)備通訊、數(shù)據(jù)采集防卡頓的經(jīng)驗(yàn)寫出來(lái)給準(zhǔn)備入行或者正在被 WPF 卡住的同行做個(gè)參考。1. 為什么這套系統(tǒng)選了 C# WPF而不是網(wǎng)頁(yè)端1.1 MES 場(chǎng)景對(duì)客戶端其實(shí)很苛刻MESManufacturing Execution System是制造執(zhí)行系統(tǒng)管的是從工單下達(dá)到產(chǎn)品完工這一段執(zhí)行層的全過(guò)程。它跟 ERP 不一樣ERP 可以坐在辦公室里慢慢點(diǎn)MES 的界面就架在產(chǎn)線旁邊操作工每天要掃幾百上千個(gè)條碼設(shè)備狀態(tài)每秒鐘都在變現(xiàn)場(chǎng)節(jié)奏完全不允許頁(yè)面轉(zhuǎn)圈等待。這就要求客戶端啟動(dòng)快、界面響應(yīng)快、長(zhǎng)時(shí)間運(yùn)行不卡頓還要能直接訪問(wèn)本機(jī)的硬件資源。這個(gè)需求一擺出來(lái)純 Web 方案就很尷尬了。不是說(shuō) Web 做不了 MES而是到了產(chǎn)線設(shè)備這一層瀏覽器要調(diào)串口、讀 USB 掃碼槍、跟 PLC 走工業(yè)協(xié)議都得繞 WebUSB、ActiveX 這類兼容性極差的路子現(xiàn)場(chǎng)機(jī)器又雜系統(tǒng)版本還亂折騰一圈下來(lái)不如桌面端直接訪問(wèn)硬件省心。1.2 C# 生態(tài)在工業(yè)現(xiàn)場(chǎng)的優(yōu)勢(shì)C# 在工控領(lǐng)域積累非常深。底層串口通訊有 System.IO.Ports網(wǎng)絡(luò)通訊有 System.Net.Sockets工業(yè)以太網(wǎng)有 OPC UA 的各種封裝庫(kù)掃碼槍、電子秤、RFID 這些外設(shè)的資料也幾乎都是 C# 的示例代碼。真到了現(xiàn)場(chǎng)要對(duì)接一臺(tái)老設(shè)備的 DLL或者用 Modbus 協(xié)議去讀 PLC 的寄存器C# 開(kāi)發(fā)者的參考資料量和踩坑經(jīng)驗(yàn)是最多的。WPF 負(fù)責(zé)界面這一層也足夠能打。界面做出來(lái)專業(yè)感強(qiáng)數(shù)據(jù)綁定機(jī)制特別適合頻繁變化的數(shù)據(jù)展示不像 WinForms 那樣動(dòng)不動(dòng)就要手動(dòng)操作控件也不像網(wǎng)頁(yè)那樣需要處理一堆跨域和協(xié)議問(wèn)題。MES 這種形態(tài)——一套系統(tǒng)要管排產(chǎn)、報(bào)工、質(zhì)量、設(shè)備、報(bào)表又要在現(xiàn)場(chǎng)跑得穩(wěn)——C# WPF 的組合在性價(jià)比上幾乎是最佳解。1.3 這套組合適合誰(shuí)如果你正準(zhǔn)備進(jìn)入這個(gè)方向或者正在猶豫技術(shù)選型我覺(jué)得這三類人最適合走 C# WPF 的路線給中小制造企業(yè)做 MES 外包或自研的團(tuán)隊(duì)有 WinForms 經(jīng)驗(yàn)想升級(jí)到現(xiàn)代化客戶端開(kāi)發(fā)的老 C# 程序員還有想把 MES 做成標(biāo)準(zhǔn)化產(chǎn)品賣給多家工廠的產(chǎn)品型公司。至于個(gè)人練手用這個(gè)技術(shù)棧做一個(gè)簡(jiǎn)單的車間報(bào)工系統(tǒng)也是最能逼近真實(shí)工業(yè)場(chǎng)景的路徑。2. 先盤一下 MES 到底有哪些功能模塊2.1 別急著寫代碼先把業(yè)務(wù)地圖鋪開(kāi)很多人一聽(tīng)到 MES 就想去寫排產(chǎn)算法結(jié)果做著做著發(fā)現(xiàn)壓根不是那么回事。MES 的核心不是算法多厲害而是把車間里的流程管起來(lái)。典型的功能模塊大致是這樣的基礎(chǔ)數(shù)據(jù)物料、BOM、工藝路線、工序、設(shè)備、工位、人員檔案這些是系統(tǒng)運(yùn)轉(zhuǎn)的底子。計(jì)劃與派工從 ERP 接工單或者手工建工單然后拆分到工序、產(chǎn)線、班次下發(fā)到具體工位。生產(chǎn)執(zhí)行開(kāi)工、完工、報(bào)工、過(guò)站、首件檢驗(yàn)、批次流轉(zhuǎn)這是操作工每天點(diǎn)得最多的界面。質(zhì)量追溯SN 條碼追溯、批次追溯、不良品處理、檢驗(yàn)記錄出了問(wèn)題要能一路追到原材料批次。設(shè)備采集通過(guò) PLC、傳感器、CNC 采集設(shè)備狀態(tài)、產(chǎn)量、關(guān)鍵參數(shù)比如注塑機(jī)的溫度壓力、CNC 的轉(zhuǎn)速負(fù)載。異常管理安燈呼叫、異常報(bào)警、停線記錄現(xiàn)場(chǎng)一有問(wèn)題系統(tǒng)要能馬上彈出來(lái)。報(bào)表看板OEE、產(chǎn)量統(tǒng)計(jì)、不良率趨勢(shì)、WIP 在制分布這些是管理層最關(guān)心的出口。2.2 繞不開(kāi)的英文術(shù)語(yǔ)MES 行業(yè)里英文縮寫多得讓人頭疼新人進(jìn)場(chǎng)第一關(guān)就是認(rèn)術(shù)語(yǔ)。我把現(xiàn)場(chǎng)最高頻的整理成一張小表縮寫全稱含義WIPWork In Process在制品BOMBill of Material物料清單SFCShop Floor Control車間現(xiàn)場(chǎng)控制AndonAndon安燈異常呼叫系統(tǒng)OEEOverall Equipment Effectiveness設(shè)備綜合效率SPCStatistical Process Control統(tǒng)計(jì)過(guò)程控制WO / MOWork Order / Manufacturing Order工單/制造訂單SNSerial Number序列號(hào)唯一追溯碼SOPStandard Operating Procedure標(biāo)準(zhǔn)作業(yè)指導(dǎo)書跟車間老師傅開(kāi)會(huì)的時(shí)候你說(shuō) WIP 他們可能愣一下但你說(shuō)在制品查詢他們立刻就知道你要干嘛。術(shù)語(yǔ)是用來(lái)整理邏輯的不是用來(lái)裝樣子的。2.3 為什么 MES 報(bào)價(jià)差異那么大經(jīng)常有人問(wèn) MES 系統(tǒng)多少錢一套這個(gè)真的沒(méi)法一口價(jià)。MES 項(xiàng)目的成本大頭從來(lái)不是軟件授權(quán)而是實(shí)施服務(wù)——現(xiàn)場(chǎng)調(diào)研、藍(lán)圖設(shè)計(jì)、接口開(kāi)發(fā)、試運(yùn)行陪產(chǎn)每一個(gè)環(huán)節(jié)都是人天成本。同樣是報(bào)工模塊A 廠只需要掃碼確認(rèn)B 廠要跟稱重?cái)?shù)據(jù)聯(lián)動(dòng)、自動(dòng)校驗(yàn)數(shù)量、超差彈窗工作量差好幾倍。設(shè)備接口數(shù)量是最大的變量接三臺(tái)注塑機(jī)和接三十臺(tái) CNC 完全是兩個(gè)價(jià)。所以如果有人不來(lái)看現(xiàn)場(chǎng)就給你報(bào)一口價(jià)你反而要小心。3. 整體架構(gòu)怎么搭客戶端、服務(wù)端、設(shè)備層各管什么3.1 我采用的分層結(jié)構(gòu)做 MES 最怕的就是把業(yè)務(wù)邏輯全塞進(jìn)界面代碼里后期根本改不動(dòng)。我一般這樣分WPF 客戶端 ├── View頁(yè)面、控件、樣式 ├── ViewModel狀態(tài)管理、命令、數(shù)據(jù)綁定 └── Model實(shí)體、接口、DTO ↓ 應(yīng)用服務(wù)層業(yè)務(wù)流程、工單流轉(zhuǎn)、校驗(yàn)規(guī)則 ↓ 數(shù)據(jù)訪問(wèn)層EF Core / Dapper SQL Server設(shè)備通訊單獨(dú)拉一層可以是 Windows 服務(wù)也可以是獨(dú)立進(jìn)程跟客戶端解耦。這樣客戶端被操作工誤關(guān)了、重啟了設(shè)備數(shù)據(jù)采集不會(huì)斷這是現(xiàn)場(chǎng)最基礎(chǔ)的要求。3.2 客戶端里推薦用 MVVM 框架WPF 開(kāi)發(fā)不做 MVVM 等于白用。我用過(guò) Prism也用過(guò) CommunityToolkit.Mvvm結(jié)論是如果項(xiàng)目規(guī)模大、模塊多比如一套系統(tǒng)里有十幾個(gè)功能模塊直接用 Prism它幫你把模塊化、導(dǎo)航、依賴注入都解決了如果項(xiàng)目不大用 CommunityToolkit.Mvvm 更輕寫起來(lái)也順手。MVVM 的核心價(jià)值是讓界面和邏輯分離。報(bào)工按鈕點(diǎn)了之后要做什么不應(yīng)該放在按鈕的 Click 事件里而應(yīng)該是按鈕綁定一個(gè) ExecuteCommand命令里調(diào)用業(yè)務(wù)層方法界面只負(fù)責(zé)把結(jié)果展示出來(lái)。這樣以后 WinForms 項(xiàng)目轉(zhuǎn)過(guò)來(lái)的同事也能快速理順?biāo)悸贰?.3 設(shè)備通訊層為什么要獨(dú)立出來(lái)設(shè)備通訊這塊我踩過(guò)最大的坑就是一開(kāi)始把串口采集寫在客戶端里結(jié)果車間一臺(tái)電腦死機(jī)整條產(chǎn)線的數(shù)據(jù)就斷了。后來(lái)我把所有設(shè)備通訊獨(dú)立成一個(gè)采集服務(wù)客戶端只是訂閱它的數(shù)據(jù)。服務(wù)端跟客戶端之間用 SignalR 或者 WebSocket 做實(shí)時(shí)推送客戶端斷線重連之后服務(wù)端還會(huì)把斷線期間的數(shù)據(jù)補(bǔ)給它。局域網(wǎng)環(huán)境下這個(gè)方案非常穩(wěn)也省了客戶端處理底層通訊的復(fù)雜度。4. 設(shè)備通訊實(shí)戰(zhàn)掃碼槍接入和 Socket 長(zhǎng)連接的真實(shí)姿勢(shì)4.1 掃碼槍先想清楚要哪種掃碼槍在 MES 里是每天都離不開(kāi)的設(shè)備。市面上主流就兩種USB 鍵盤口和串口。鍵盤口掃碼槍本質(zhì)上是模擬鍵盤輸入焦點(diǎn)在哪字符就打到哪好處是即插即用壞處是容易串到別的輸入框還會(huì)被中文輸入法干擾。串口掃碼槍通過(guò)串口協(xié)議把數(shù)據(jù)發(fā)給程序由代碼精確控制我強(qiáng)烈建議 MES 項(xiàng)目選串口或者 USB 轉(zhuǎn)串口的型號(hào)穩(wěn)定得多。4.2 串口掃碼槍的觸發(fā)實(shí)現(xiàn)串口掃碼槍接好之后核心就是用 SerialPort 的 DataReceived 事件讀取數(shù)據(jù)。掃碼槍通常以回車鍵0x0D表示一幀數(shù)據(jù)結(jié)束代碼里要累加接收緩沖區(qū)遇到回車再觸發(fā)一次完整的條碼處理private StringBuilder _buffer new StringBuilder(); private void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) { var sp sender as SerialPort; int len sp.BytesToRead; byte[] data new byte[len]; sp.Read(data, 0, len); foreach (byte b in data) { if (b 0x0D || b 0x0A) { string barcode _buffer.ToString(); _buffer.Clear(); if (barcode.Length 0) { Dispatcher.Invoke(() ProcessBarcode(barcode)); // 更新UI必須在UI線程 } } else { _buffer.Append((char)b); } } }這里有兩個(gè)關(guān)鍵點(diǎn)一個(gè)是 DataReceived 事件在后臺(tái)線程觸發(fā)更新界面必須用 Dispatcher 切回 UI 線程另一個(gè)是掃碼數(shù)據(jù)要按回車拆幀否則可能出現(xiàn)半條碼的問(wèn)題。這種處理方式我用了很多年從來(lái)沒(méi)出過(guò)差池。4.3 Socket 長(zhǎng)連接里的粘包拆包MES 里跟設(shè)備通訊最多的場(chǎng)景是 TCP 長(zhǎng)連接比如跟 PLC、視覺(jué)系統(tǒng)、老化測(cè)試設(shè)備對(duì)接。很多新手在這里最懵的就是粘包TCP 是字節(jié)流沒(méi)有消息邊界你一次 Send 出去的數(shù)據(jù)對(duì)端可能一次 Receive 收到多包也可能半包。解決辦法就是自定義協(xié)議幀頭 數(shù)據(jù)長(zhǎng)度 數(shù)據(jù)體 校驗(yàn)// 發(fā)送端 byte[] body Encoding.UTF8.GetBytes(json); byte[] frame new byte[4 body.Length]; frame[0] 0xAA; // 幀頭 frame[1] 0x55; frame[2] (byte)(body.Length 8); // 長(zhǎng)度高字節(jié) frame[3] (byte)(body.Length 0xFF); // 長(zhǎng)度低字節(jié) Buffer.BlockCopy(body, 0, frame, 4, body.Length); socket.Send(frame); // 接收端先把字節(jié)流存緩沖區(qū)解析出完整幀再處理 public static Listbyte[] DecodeFrames(byte[] received) { var frames new Listbyte[](); // 在緩存區(qū)中循環(huán)查找?guī)^、解析長(zhǎng)度、取幀直到緩存不足一幀 // 剩下的數(shù)據(jù)保留等下次接收繼續(xù)拼接 }拆包的邏輯說(shuō)起來(lái)不復(fù)雜但實(shí)際調(diào)起來(lái)很考驗(yàn)?zāi)托?。設(shè)備廠商的協(xié)議文檔寫得千奇百怪有的用 ASCII 文本協(xié)議有的用二進(jìn)制有的校驗(yàn)算法不公開(kāi)。我的經(jīng)驗(yàn)是先讓設(shè)備廠商提供報(bào)文樣例用串口調(diào)試助手或 TCP 調(diào)試工具抓幾組真實(shí)數(shù)據(jù)再寫解析代碼千萬(wàn)不要憑空想象協(xié)議格式。關(guān)于連接數(shù)量很多人問(wèn) C# TCP 最多支持多少個(gè)連接。局域網(wǎng)場(chǎng)景下只要用 async/await 模式而不是一個(gè)連接一個(gè)線程單機(jī)支撐幾百上千個(gè)連接并沒(méi)有什么問(wèn)題。但 MES 里更需要注意的不是上限而是斷線重連和心跳?;钴囬g網(wǎng)絡(luò)經(jīng)常有抖動(dòng)設(shè)備端斷電重啟是常事。我一般會(huì)在客戶端線程里加一個(gè)定時(shí)心跳每 5 秒發(fā)一次連續(xù)幾次沒(méi)收到回應(yīng)就主動(dòng)斷開(kāi)重連這樣比干等超時(shí)可靠得多。5. 數(shù)據(jù)采集與界面刷新把卡頓提前焊死5.1 卡頓是怎么發(fā)生的循環(huán)數(shù)據(jù)采集和 UI 刷新卡頓是 WPFMES 項(xiàng)目里問(wèn)得最多的問(wèn)題?,F(xiàn)象很好描述界面開(kāi)著采集過(guò)一會(huì)兒鼠標(biāo)就轉(zhuǎn)圈了窗口拖不動(dòng)嚴(yán)重時(shí)直接白屏。根因只有一個(gè)——把耗時(shí)操作和界面更新放在了同一個(gè) UI 線程里。WPF 的 UI 線程要處理鼠標(biāo)鍵盤消息、繪制界面、執(zhí)行布局如果你在這個(gè)線程里做數(shù)據(jù)讀取比如循環(huán)讀 PLC、讀寫數(shù)據(jù)庫(kù)它就沒(méi)空處理界面消息自然就卡了。典型的錯(cuò)誤寫法長(zhǎng)這樣// 反面教材把采集和刷新都放在UI線程 while (true) { var data ReadPlcData(); // 耗時(shí)操作可能阻塞 txtTempr.Text data.ToString(); // 直接更新控件 Thread.Sleep(200); }這個(gè)循環(huán)一旦跑起來(lái)UI 線程全被占住界面就成了一個(gè)假死狀態(tài)。5.2 正確姿勢(shì)后臺(tái)采集 批量刷新正確做法是把采集放到后臺(tái)任務(wù)里數(shù)據(jù)先放進(jìn)一個(gè)線程安全的隊(duì)列UI 側(cè)再定時(shí)批量取出刷新。我用得最順的方案是 Channel DispatcherTimer// 后臺(tái)采集線程 var channel Channel.CreateUnboundedfloat(new UnboundedChannelOptions { SingleReader true, SingleWriter true }); Task.Run(async () { while (true) { await Task.Delay(100); // 每100ms采一次 float value ReadPlcTemperature(); // 真實(shí)采集動(dòng)作 await channel.Writer.WriteAsync(value); } }); // UI側(cè)DispatcherTimer每500ms批量刷新一次 _dispatcherTimer new DispatcherTimer(); _dispatcherTimer.Interval TimeSpan.FromMilliseconds(500); _dispatcherTimer.Tick (s, e) { while (channel.Reader.TryRead(out float value)) { Temprature value; // ViewModel的屬性觸發(fā)界面更新 } }; _dispatcherTimer.Start();這樣采集線程干采集的活UI 線程干刷新的活各不干擾。就算采集再頻繁UI 側(cè)始終按自己的節(jié)奏刷新界面就不會(huì)卡。這里還有一個(gè)小經(jīng)驗(yàn)就算數(shù)據(jù)每 100ms 來(lái)一次界面也沒(méi)必要刷新那么快人在看板上根本感知不到 10Hz 的刷新我一般刷新頻率控制在 1-2Hz反而更流暢清晰。5.3 定時(shí)器選型與實(shí)時(shí)曲線WPF 里有三種常用的定時(shí)方案DispatcherTimer、System.Timers.Timer、Task.Delay 循環(huán)。很多新人不理解它們區(qū)別我直接說(shuō)結(jié)論如果只是定時(shí)刷新界面用 DispatcherTimer它就在 UI 線程觸發(fā)更新控件不用 Invoke如果要定時(shí)采集數(shù)據(jù)、定時(shí)寫數(shù)據(jù)庫(kù)這類后臺(tái)動(dòng)作用 System.Timers.Timer 或者 Task.Delay 循環(huán)觸發(fā)線程是后臺(tái)線程不會(huì)卡界面。但 Timer 事件里更新 UI 一定要通過(guò) Dispatcher.Invoke 回來(lái)。做實(shí)時(shí)趨勢(shì)曲線的時(shí)候我常用 LiveCharts2 或者 OxyPlot。OxyPlot 勝在穩(wěn)定和輕量LiveCharts2 做出來(lái)的界面好看動(dòng)畫順滑。注意它們的動(dòng)態(tài)數(shù)據(jù)更新也最好不要每秒幾十次地推把數(shù)據(jù)緩存到后臺(tái)集合里界面依然走定時(shí)刷新的路子讓曲線按照固定的幀率重繪運(yùn)行一整天也不卡。6. 項(xiàng)目落地時(shí)最容易踩的幾個(gè)坑6.1 輸入法把掃碼數(shù)據(jù)吃掉了這個(gè)坑我在第一個(gè)項(xiàng)目里就碰到過(guò)。操作工掃條碼偶爾發(fā)現(xiàn)輸入框里少了一位字母或者變成了一串拼音一開(kāi)始還以為是掃碼槍壞了。后來(lái)才定位到是 WPF 文本框默認(rèn)允許中文輸入法掃碼槍快速輸入的字符被輸入法攔了一部分。解決辦法很簡(jiǎn)單涉及掃碼錄入的文本框直接禁用輸入法TextBox InputMethod.IsInputMethodEnabledFalse /那一行 XAML 加完之后掃碼亂碼的問(wèn)題再?zèng)]出現(xiàn)過(guò)。6.2 .NET 8 調(diào)用 .NET Framework 老庫(kù)的兼容問(wèn)題項(xiàng)目越往后越會(huì)面對(duì)一個(gè)現(xiàn)實(shí)問(wèn)題客戶現(xiàn)場(chǎng)的舊系統(tǒng)有別人留下的組件你不可能全部重寫。比如你的 WPF 主程序跑在 .NET 8 上客戶卻拿過(guò)來(lái)一個(gè) .NET Framework 4.6 的 WinForms 工具庫(kù)直接添加引用偶爾能編過(guò)但運(yùn)行時(shí)會(huì)報(bào)各種奇怪的版本沖突。我的處理順序是這樣如果拿得到源碼就花時(shí)間把老庫(kù)遷移到 .NET 8修一修 API 差異這是最干凈的方案。如果沒(méi)有源碼就把這個(gè)老庫(kù)單獨(dú)打包成一個(gè) .NET Framework 4.8 的小工具進(jìn)程主程序通過(guò)本地 HTTP 接口和它通訊雖然有點(diǎn)土但穩(wěn)定不用去和底層類型糾纏。工業(yè)現(xiàn)場(chǎng)最怕的是改了之后不知道哪里冒問(wèn)題隔離運(yùn)行反而安全。6.3 Excel 導(dǎo)入和 MVVM 綁定那些坑MES 里天天要導(dǎo) Excel料號(hào)清單、BOM、工藝路線、班次排班。我的建議是一律用 NPOI 或 ClosedXML 這類開(kāi)源庫(kù)在內(nèi)存里讀千萬(wàn)不要用 Office COM 組件服務(wù)器上沒(méi)裝 Office 就直接崩裝了也會(huì)留下大量半死不活的 Excel 進(jìn)程。數(shù)據(jù)量大就分批讀、分批校驗(yàn)?zāi)0褰y(tǒng)一由系統(tǒng)下載避免操作工自己改格式。MVVM 綁定不更新也是高頻問(wèn)題。做了屬性綁定半天不動(dòng)十有八九是類沒(méi)繼承 INotifyPropertyChanged屬性沒(méi)在 setter 里觸發(fā) PropertyChanged或者用了普通 List 而不是 ObservableCollection??窗迳系膶?shí)時(shí)數(shù)據(jù)列表最省心的方式就是把集合屬性定義為 ObservableCollection增刪自動(dòng)刷新界面這也是 MES 數(shù)據(jù)展示里最舒服的一個(gè)機(jī)制。最后再分享一點(diǎn)個(gè)人體會(huì)。做 MES 系統(tǒng)技術(shù)難點(diǎn)大概只占四成剩下六成是業(yè)務(wù)流程的溝通和異常邏輯的設(shè)計(jì)。車間生產(chǎn)不是按教科書走的條碼掉了怎么補(bǔ)、設(shè)備中途斷電數(shù)據(jù)怎么恢復(fù)、操作工漏報(bào)工怎么糾正這些意外流程才是項(xiàng)目真正值錢的地方。我的習(xí)慣是項(xiàng)目啟動(dòng)前先到產(chǎn)線跟崗一整天把現(xiàn)場(chǎng)所有異常情況記下來(lái)回來(lái)再設(shè)計(jì)系統(tǒng)邏輯。代碼寫多了你會(huì)發(fā)現(xiàn)C# 和 WPF 只是工具真正讓系統(tǒng)在車間里站住腳的是你對(duì)制造現(xiàn)場(chǎng)的理解。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日夜精品| 天天做天天爱| 尤物视频新赏网鲜网色诱网| 久久久三区二区一区| 在线有码中文字幕| 欧美日韩大陆黑人少妇99| 91老熟女| 久久久久久久久久久久黄色 | 五十路六十路七十路熟婆| www.狠狠| 青草精品视频-日本久久久久网站| 99久久精品国产高潮| 加勒比东京热五月天天堂网| AV乱伦专区| 人妻熟女字幕一区二区| 亚洲成人黄色在线观看| 日本天天吊| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 亚洲色婷婷综合久久一区二区三区| 日本无码1| 久久r精品| 99视频自拍| 好爽视频在线观看视频| 青青草字幕AV| 天天色播| 岛国1区2区3区在线观看| 久久一二三四不卡 | 97色碰| 欧美情色男人的天堂| 国产高清不卡视频| 国产性爱乱伦AV| 91插B网站| 久久久草成人网站久久久草成人久久久草久久久 | 一区二区乱码福利| 99999无码| 欧美日本国产日韩激情视频| 天天射夜夜骑| 久久97资源 网| 天天视频黄网站| 亚洲美女精品九九视频| 国产熟女一区二区丰满| 97干在线| 青草成人免费视频一com| 精彩国产视频播放1区2区| 91在线无码精品秘 软件| 欧美情色亚洲| 97er欧美性| AV中文在线可看| 五月婷网站| 亚洲天天自拍| 久久超碰av在线| 熟妇人妻一区二区三区| 欧美午夜精品久久久久久超碰| 视频一区二区三区精品| 日韩97| 亚洲天堂日本| 久久有码| 男人天堂资源| 国产老熟女| 日本中文字幕在线电影| 操逼不卡中文字幕| 台湾成人无码AV| 精品国产av一区二区三区四区入口| 久久综合av| 自拍视频大全亚洲专媒视频/一区二区三区 | 亚洲nv男人的天堂网| 999亚洲国产视频| 亚洲欧洲成人在线电影| 中日992视频| 四虎AV无码| 国产女人与拘做受视频免费| 日韩无码精品综合久久| 国产丝袜美女在线一区| 操逼逼无码| 97无码视频在线播放| 激情五月婷婷| 97在线免费观看| 欧美性后入| 无码国产Av| 夜夜青青无码影院| caopeng97人妻| 天天做日日做天天欢。| 蜜臀久久99精品久久久电影| 九九久精品| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 亚洲中文sv| 欧美|91色综合| 操高情无码| 少妇蹲下露出大唇5| 亚洲综合九| 五月丁香六月| 一级性爱aaaa| 天天色天天干天天射| 青青草好吊色| 亚洲中文字幕av| 乱老熟女一区二区三区| 99少妇精品视频| 亚洲第一狼人丝袜美女另类| 国产三级片在线观看| 999九九精品| 丁香五月激情啪啪| 激情小说五月天| 最新av网站在线观看| 凹凸 69堂 在线播放| 97看操| 成人精品在线观看| 探花一区在线| 亚欧韩av| 青椒国产97在线熟女| 999久久久九九九九| 大香蕉92| 九九九热精品| 六月丁操逼| 天美传媒国产原创中文字幕亚洲欧美另类| 欧美亚洲| 日韩Va亚洲va欧美Ⅴa久久| 日日超碰亚洲| 91天堂| 91情色在线| 欧美在线|亚洲| 青青草视频导航官网| 亚洲色偷偷色噜噜狠狠99网| 天天插天天插| 五月丁香影院| 女优视频第10页| 手机看av网站在线看| 蜜乳成人AV| 免费观看日本操逼视频| 欧美综合另类| 麻豆天美91| 1区2区3区视频| 精品免费成人久久| 青草成人免费视频一COm| 啊啊啊男女| 国产精品夜夜夜| 日韩三级性| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 亚洲综合一| 国产精品2020| 日日骚精品视频| 日本精品性生活久久久| 亚洲成人妻日韩在线| 日本久久综合| 91精产一区二区三区| 老熟妇一区二区三区啪啪| 亚洲综合小视频小说在线观看| 国产女人高潮视频| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 色婷婷国产精品一区在线观看| 美女十八禁| 大香蕉懂9| 国产午夜福利合集| 综合第一页| 色婷婷一区二区三区久久| 国产日韩久久| 熟女五十路一区二区三| 亚洲 欧美 手机在线观看| 加勒比在线视频一区二区三区| 九月丁香综合网| 欧美另类综合久久| 欧美极度丰满熟妇hd| 五月婷久久| 亚洲天天艹| 媚薬在线视频麻豆| 久久老熟女| 国产精品久久| 久久久久久亚洲中文| 强奸乱伦av电影| 亚洲AV无码乱码在线观看性色| 国产成人网址| 欧美亚洲一区二区久久久婷精品大包诱| 国产精品网站www| 欧美一品道| 欧美热图99| 中文久久| 国产第25页在线观看| 美女自卫慰黄网站免费| 一区 欧美 日韩 麻豆| 欧美亚洲玖玖玖| 国产suv精品一区二区四区999 | 涩涩久久精品| 久久久久久十| 老司机天天操| 伊人亚洲国产一成人久久精品,久久| 亚洲色图 欧美热图 清纯唯美 另类自拍| 欧洲乱码一区二区| 亚洲综合嫩| 岛国黄片网站| 97人人干| 亚洲啪啪啪啪视香蕉| 欧美碰碰综合色| www.亚洲黄色| 日韩中文欧美| 国产第二页| 精品在线78| 亚洲电影中字一区二区| 色狠狠色| 91丝袜美腿片| 亚洲色婷婷久久91| 五月丁香综合激情| 亚洲高清少妇| 日韩一级久久毛片| 色婷婷基地| 新精精品久久精品| 大二网站亚洲| 亚洲欧洲视频小说在线观看| 97亚洲欧美| 人人色人人操在线| 国产精品久久久久久久久久久久久久久久| 肉动漫无遮挡h在线观看| 亚洲国产激情国产av| 色大师网站www永久网站视频| 亚洲色图图片| 亚洲欧美校园另类春色| 亚洲天堂久久久久久粉红视频| 欧美性生活综合| AV色五月天| 免费的很黄很污的全部视频| 97在线欧洲| 国产白丝精品在线观看| 大胆91| 亚洲综合有码| 综合久久中文字幕综合日韩精品| 午夜精品久久久99热蜜桃的功能特点| 成 人片 黄色大片| 超碰天天久久79| 明星性猛交ⅹxxx乱大交| 水澄无码AV| 精品传媒在线一区| 五月天婷婷久久| 超碰久超碰久| 夜夜爽妓女| 欧洲久久一二线| 日韩啪啪啪啪啪| 亚洲无码一区成人免费午夜| 精品一区二区三区最新| 看免费的黄片| 熟女AV一区| 亚洲成a人在线观看久| 日韩 女同 综合| 8050午夜少妇无码| 亚洲熟女一区二区| 色99视频| 校园春色 欧美| 18一区二区三区| 伊人操你| 国产精品白丝AV| 色5月婷婷| 国产精品一区二区密臀| 九九玖玖精品| 无码精品久久| 欧洲亚洲综合| 99色综合| 富女玩鸭子一级毛片| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 色在线综合| 亚洲男人的天堂网| 亚洲精品亚洲人成人网| 亚洲自拍97| 精品乱子一区二区三区99| 岛国毛片在线观看免费| 欧洲色综合| 中文字暮97| 日本韩国国产精品一区| 亚洲骚男同com| 婷婷大香蕉| 影音先锋每日最新资源在线观看 | 丁香五月性爱| 欧美视频一| 亚洲资源网| 九九热精品| 亚洲一区日韩精品中文字幕| 视频在线中文字幕| 久草久热| 日韩欧美俄罗斯A片| 欧美狠狠狠| 青青色综合| 91成人精品在线播放| 78超碰| 日韩99神马视频片| 日韩性爱高清免费视频| 最新国内自拍av免费| 天天操熟妇| 亚洲91av| 天天日天天干天天整| 搡老女人老91妇女老熟女| 久日91在线| www.色五月| 翔田千里Av在线| 东京热,男人的天堂| 超碰激情808| 玖玖资源综合在线视频| 91精品国产91久久福利| 超碰诱惑| 国产第二页| 久久五月份| 国产高清MV操逼视频| 国产无码成人无码| 69一区二区三区| 伊人四虎综合| 一区 欧美 日韩 麻豆| 极品极品色影院| 在线观看高清AV| 九九九九久久久久| 久9久9久9久9久9久9 | 99色骚| 国产视频三区四区| 精品妇女一区二区三区| 五月丁香色色网| 国产AV激情无码久久无码| 亚洲av性爱电影| 91天美免费| 中文字幕人乱码中文字的预防方法 | 啊好爽受不了无码| 婷婷四五区| 牛黄色久午久| 国产亚洲日本精品在线| 午夜激情成人在线观看| 翔田千里A片一区二区| 日本ZZ高免费A级视频| 欧美乱妇狂野欧美在线视频| 久久一留热品黄| 私色综合网| 天天色播| 99爱精品| 久久综合99| 黄网色一区二区三区四区精品| 一区二区三区在线美女| 亚洲天堂五月天国产| 一区二区中文| 日本精品五区| 曰韩人妻中文字幕在线| 国产激情视频一区区三区| 自拍六区| 久久专区| 九九九久久久| 欧美一区二区男人天堂| 天天射天天操天天干天天吃2018| 日韩国产精品人妻无码久久久| 日少妇视频| 成年人黄色| 操东北女人| 综合久久97| 国产精品白丝| 黄片视频观看| 思思热免费在线视频| 国产一级内射无挡观看| 国产操伦| 插欧洲美女欧美精品| 国产18精品亚洲精品| 手机看片1025| 红杏大香蕉| 欧美淫穴| 伊人色综合超碰| 久久久18禁| 99蜜桃臀久久久欧美精品网站| A啊啊在线观看| 亚州男人的天堂| 偷拍综合亚洲| 日韩电影免费网站麻豆视频| 久久加勒比| 男女一进一出视频久久| 久久精品欧美一区二区三区不卡| 免费精品人妻一区二区三| 婷婷丁香五月天综合东京热| 久99热| 爽爽淫人网| 有码人妻系列| 亚洲91网站| 天天综合站| 97视频免费播放| 男女无套 免费网站| 久久精品国产AV一区二区三区| 国产精品亚洲高清在线| AAA久久| 日韩在线视频1234| 亚精品无码毛片一区二区三区| 亚洲情色综合网| 99re欧美| 岛国片在线播放| 人人干人人操人人..com| 91婷婷| 久久精品一区| 亚洲无码一区成人免费午夜| 白丝被操91| 精品在线观看视频在线| 1024亚洲中文字幕久在线看片你懂的| 天美传媒在线一区| 怡红院成人视频| 最新av中文字幕高清| AV无码久久久精品| 在线天堂999| 中文在线视频| 日本淫乱女一区二区三区视频| 国产 热久久久久国产精品| 丁香五月天啪啪| 欧美精品双插| 超碰97色| 免费视频无码| 后入福利| 日本成人A片网站| 99热这里是精品| 黄色十八禁网站| 偷窥自拍亚洲| 久久精品日韩| 国产精品情侣啪啪| 国产91 丝袜在线播放 | 亲子敌伦对白在线播放| 午夜理论片在线观看免费| 荡小穴在线观看| 偷拍亚洲情色| 成人性爱av| 超踫中文字幕| 深喉吞精| 国产真实野战在线视频| 神马久久网| 婷婷爽人人婷婷爽视频| 久/久精品99看9| 人妻人妻天天碰| 秋霞Av理论一级在线| 国产精品亚洲美女久久久久| 新精精品久久精品| 日韩福利综合一区| yirendaxiangjiashipin| 欧美后入式| 99热99在线播放激情| 久艹伊人精品综合在线| 久久αⅴ| 色九月| 天天综合网亚洲综合网| 久草国产在线视频| 一直超碰| 国产一区免费午夜视频| 九一屌逼| 五月天我淫我色av| 亚洲精品久久久久久久久豆丁网| 久久精品无码专区| 麻豆这里只有精品| 伊人久大| 亚洲欧美激情在线视频| 久久久久国产精品人妻aⅴ天堂| 久久久久久69国产一区二区| 操b网站亚洲无码| 久久永久无码人妻视频| 色婷婷综合久久久久中文一区二区 | 亚洲少妇中文字幕网址| 人妻精品一区一区三区蜜桃91| 九色精品视频导航1| 青青草色情网站视频| 人妻9117c| 97青青操视频| 五月天婷婷在线看| 中美日韩毛片| 少妇3P性爱自拍| 中出欧美| 色999人与兽| 天美传媒精品一区二区| 欧美性爱97超碰| 亚洲色人| 亚洲最大黄网| 玖玖爱在线视频免费观看| 中文字幕丝袜人妻| 国产乱伦亚洲色图高清无码| 午夜啊啊啊| 无码丰满熟妇一区二区浪潮AV| 国产肏屁眼视频| 欧洲亚洲国产综合在线| 久久综合久色欧美综合狠狠 | 少妇同性| 成人a大片在线观看| 在线观看午夜婷婷久久久久清性观看| 精品亚洲国产成人精品| 人妻丰满熟妇av无码区蜜桃| 色婷婷亚洲婷婷| 99re超碰| 欧美性爱一区二区三区四区| 日韩欧美中文| 国产日本顶级一区二区三区| 人妻精品综合中文字幕在线| 岛国福利在线精品播放| 日本中文字幕熟妇| 久久婷婷精品| 国产综合色精品在线观看| 免费看污网站| 无码av永久免费专区网站| 啊啊啊轻点在线观看| 丁香五月社区| 日本狂喷奶水在线播放212| 国产后入清纯| 日韩人体偷拍| 操逼不卡中文字幕| 后入国产| 九九热精彩视频| 亚洲色诱惑| 蜜臀久久99精品久久久电影| 日韩无码久久熟女一级片| 久久精品99| 欧美成年人性爱视频免费观看| 亚洲黄a三级三级三级看三级| 曰韩av中文字幕专区| 亚洲国产精品成人久久蜜臀| 精品一国2| 亚洲中文字幕97久久精品少妇| 日本熟女不卡视频| 新怡红院| 人妻在线大香蕉| 亚洲成av人片色午夜乱码| 97超碰欧美| 日本三级韩国三级美三级91| 99热免费| 精品成人av一区二区三区在线| 日本中文熟女视频| 色综九九九一区| 亚州色图狠狠干| 大香蕉手机视频| 国产女人和拘做爰视频| 91美女视频在线观看| 91美女視頻| 91色女| 曰韩av中文字幕专区| 久久无码一区二区二三区性色| 亚洲天堂一区二区| se,,,亚洲欧美| 天天综合日韩网| 性爱乱伦一区| 99re国产精品视频| 操国产逼| 亚洲美女精品九九视频| 日韩少妇在线视频| 狠狠热这里都是精品| 色情综合网| 激情接吻视频久久久久久| 亚洲色欲天天天堂色欲网女| 久久人妻| JuliaAnn丝袜熟女系列| 国产熟码AV| 91色堂| 女生自91网站| 欧中日成人免费影视| 91粉芽高清在线一区二区| 亚洲第一成人影院色播| 日韩激情啪啪啪| 自拍偷拍草一草| 国产成人在线观看网址| 国产97免费视频| 极品人妻少妇综合| 麻豆色约约| 欧美第一页| 欧美传媒一区| 国产精品一区二区后入| 亚洲区限制级| 国产午夜视频| 日本不卡二三区| 爱欲AV| sss视频华人在线| 99啪| 有码免费观看| 天天天肏屄欧美| 大香蕉 222| 嗯嗯啊啊用力视频免费| 99国产天美| 91伊人影视综合| 青青草精品| 屌妞视频久久久久久久| 色欲色香天天天综合网www-亚洲综合国| 97超碰色屌| 中 文字幕一区二区三四 五 区日 日 骚 | 久久无码成人| 黑丝自慰喷水网站| 人人操人人大香蕉| 天美麻花大全视频| 99热这里只有精品9| 色婷五月天| 蜜臀久久99精品久久久老,,| 骚乳在线| 天天天天天天天天综合| 亚州色阁| 国产精品另类| 一区二区三| 亚洲日韩人妻中文字幕一区| 日韩极品无码B| 日韩人妻播放| 黄网在线播放| 天天日日舔舔| 日日骚 av| 久久久久久久9最新免费视频观看| 91视频综合在线| 久久久一区二区三区麻豆| 热热色91| 老外又粗又长一晚做五次| 免费的很黄很污的全部视频| 亚洲av强奸乱伦| 香蕉在线一区二区三区| 亚洲精品天天影视综合网| 欧美大片天天看| 亚洲精品九九九九九九| 亚洲情色综合| 美女极品一区二区三区| 激情五月综合| 一及黄久一点| 久久久三区二区一区| 日本综合色图| 亚洲91在线播放影院| 国模精品一区二区三区苹果色戒| 日韩乱码Av| 99精品高潮| 2017天天插| 久久久久免费看少妇A片特黄| 婷婷五月天激情网| 91在线美女| 日韩中文字幕宗合在线| 欧美色图亚洲激情| 精品亚洲国产成人av网站| 免费视频无码| 九九热在线精品视频| 精品夜夜澡人妻无码AV| 1人人看人人摸人人操| 激情久久久| 欧美18禁91| 国产精品农村妇女精品| 中国农村熟妇毛片视频| 亚洲天堂久久| 欧美日韩亚洲高清不卡一区二区三区| 青青草在线视频美女| 影音先锋日本乱伦| 五月天综合在线| 亚洲免费97免费| 欧美日韩另类激情图片| 成人八戒网站| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 精品中文字幕第一页| 天天做天天爱| 亚州Av天美传媒| 高清国产无码av| 防屏蔽在线视频| 另类专区加勒比| 青娱乐福利99| 亚洲高潮少妇| 超碰97综合网| 色狠狠 - 百度| 中文字幕一区二区三区人妻少妇在线| 久久97视频| 欧美人妻久久精品二区三区| 91色综合激情| 91精品老女人| 激情综合五月婷婷| 中出人妻中文字幕91在线| 欧美呦呦性爱| 三级片大波波| 91中出| www.狠狠操| 97 国产精品| 亚洲日韩美女中文字幕乱| 超碰99热中文字幕| 久久永久无码人妻视频| 99国产人成精品| 中文字幕视频二区| 久久久久9| 天天在线91| 天天视频综合在线观看视频| 好屌色综合| 岛国片在线播放| 蜜伊人色综合97| 人人操,人人液| 电影69乱码96| 欧美中出| 夜夜高潮夜夜爽高清视频一| 东京热男人的天堂| 欧美美女自慰一区二区三区| 九九草| 国产丝袜视频| 欧美一二三| 中文字幕一区 二区三四五 区日 日骚| 99999久久精| 五月天啪啪| 亚洲97精品| 久久久艹艹艹| 午夜亚洲WWW湿好大| oumeisetupian| 18禁无码永久免费无限制| 亚洲天堂自拍| 丰满人妻一区二区三区四区| 久久久久久久六六| 亚洲成A∨人影院在线欢看| 国产av色网| 久久婷婷视频| 亚洲综合999| 亚洲美欧999| 伊人精品久久网站| 五月天亚洲网| 99精彩视频| 国产一级高清免费观看| 中文字幕天天天天天| 午夜a成v人电影| 青草视频人妻在线观看| 天天做日日爱夜夜爽| 久久久久久人体| 综合网,亚洲,欧美| 伊人五月天婷婷| 小骚逼被操的爽不爽| 日本国产高清色www视频在线| 少妇蹲下买菜露大唇0| 久久久无码国精品无码三区三区| 久久精品—区二区三区内射| 婷婷激情一区二区三区俺也去| 亚洲精品三区在线观看| 熟妇一区,二区,三区。| 欧美午夜精品久久久久久3D| 激情小说图片亚洲首页| 国产精品一级二级在线| 婷婷五月成人| 久久久久久国产成人| 大香蕉伊然在亚洲91| 色综合色| 亚洲AV成人无码一二三久久| 粉嫩久久久极品| 性欧美另类高清| 日本欧美一区二区三区视频麻豆| 男女香蕉一区二区| 国语人妻精彩刺激| 国产精品麻豆视频网站| 精品人妻丰满熟妇一区二区三| 夜夜高潮夜夜爽| 日韩精品黄片免费观看| 国产精品播放| 久草精品视频| 人人色97| 99久久精品无码一区二区| 色汉综合| 精人妻无码一区二区三区伊人直播| 思思99热| 亚洲天堂7777| 色欲天天综合久久久无码网中文| 亚州九九九精品视频| 天综合网| 午夜福利视频在线一区| 人人搞人人插人人操| 91在线丝袜| 国产嫩草精品A88AV在线| 欧美日韩性爱精品| 国产91会所女技师在线观看| 久草精品在线| 久久久久国产| 顶级少妇BT天堂| 人妻中文在线| 国产女人与拘做受视频免费| 亚洲综合电影| 精品女同一区二区三区| 欧美色日本| 麻豆视频test| 丁香五月影院| 99久久久er直播网址| 四虎午夜影院| 欧洲综合色图| 久久精品国产97欧美精品亚洲| 东京成人一区| 精品无码久久久| 超碰99在线| 亚洲综合中文字幕有码| 色操逼网| 日韩啊V| 色综合91好| 91天堂丝袜美腿| 人妻无码久久一区二区三区免费| 97色在线观看| 五月丁香六月| 亚洲一区日韩| 黄片直播三级黄片两女一男| 欧美午夜视频免费观看| 2024年最新色情网站在线观看 | 欧美成人性爱视频大全| 在线a v| 性爱网站一区二区| 国产精品精品系列在线观看| 97 色综合| 欧色网址| 蜜臀99久久国产| 蜜汁欧美| 欧美狠狠狠| 精品二区久久| 蜜区区视频79| 天天影视综合色| 五月天精品| 久久99干一本高清| 免费男人的天堂| 天天综合站| 亚洲极品| 久草色在线观看| 欧美啪啪啪91| 欧美的精品的视频| 久久久青青草| 日本天天干天天操一区| 欧美翘臀视频网站一区二区三区 | 久久超碰网| 久久78| 国产品精品自在在线午夜免费| 超碰95| 欧美天天| 国产丝袜美女在线一区| www.亚洲成人一区| 亚洲伊人a线观看视频| 亚洲精品毛片在线观看| 日韩欧美tv一区二区在线观看| 亚洲蜜乳av| 国产一区二区av综合| 欧美疯狂做爰xxxx| 亚洲av无码成人精品国产| 亚洲高清在线| 超碰人人乐97| 久久av色| 精品一二三区女同| 91痴汉| 91综合熟女| 一二三区操逼国产91| 眼镜人妻101.com| 欧美aaaaaaa| 日韩AC| 中文字幕第页| 综合 青草 伊久久 影院 综合| 国产精品熟女九九九| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 国产自偷| 懂色Av| 日本免费专区| www.久久| 秋霞男人网| 精人妻无码一区二区三区伊人直播| 久久精品成人| 欧美精品三级黄片| 国产成年免费大片黄在线观看| 91小视频| 五月黑AⅤ| 97精品国产精品免费观看| 国产吹潮女在线观看| 加勒比综合88| 收看日本人日bb| 亚洲精品国产精品乱码不99| 婷婷四五区| 色拍偷亚洲| 丝袜足交视频| 成人性爱av.com| 久久精品国产精品亚洲艾通辽熟妇 | 韩国一级婬片A片AAAAA| 青青青国产| 日韩黄色小说| 久久的免费性爱视频| 风流老熟女一区二区三区l| 久久九九99| 欧美日韩婷婷中文| 精品人妻一区二区三区免费视频| 欧美精品久久久久久久丰满| 日韩AC| 97人人爱人人做人人乐| 欧美天天影院| 久久久久久久伊人精品| 九九黄色网| 蜜桃久久久久久久久久久久 | 在线a亚洲视频播放在线| 天天干夜夜一操| 伊人97色天使| 色亚洲欧美| 东北丰满熟女国产一区 | 亚洲国产日韩精品久久久| 亚洲高清无毛一区二区| 婷婷五月天网| 日本一久是| 国内偷拍精品一区二区| 欧美 亚洲 偷拍自拍| 人人搡人人肉久久精品| 九九九久久久| 岛国精品视频在线观看| 日韩图区| 一级片视频啪啪| 狠狠狠狠狠| 后入日本1234| 台湾成人无码AV| 国产suv精品一区二区四| 极品出轨视频网站| 亚洲精品人妻在线| 中文字幕在线观看第二页| 女人香蕉久久毛毛片精品| 99久久婷婷丁香| 亚洲高清视频在线观看| 东京热男人天堂| 爱我干综合| 手机av亚洲丝袜美腿日韩第一页二页| 日本操逼aaaaa| 久草久热| 亚州综合色| 久热超碰| 欧美综合色图片| 人、人、摸,人、人、草| 中文字幕女同在线| 国内精品a| 欧美亚洲第1页| 久久97| 久久香蕉国产传媒一区剧情天美| 91亚洲最新在线| 亚洲欧洲国产综合av| 欧美国产操逼| 十八禁的黄污污免费网站| 国产精品视频| 中文字幕AV乱伦| 美女的肌被草喷水视频| 国产1024在线播放| 北条麻妃99精品青青久久| 九九九九精| 人妻少妇视频在线播放| 91宗合网| 久久婷婷一区二| 91色香| 国产成人亚洲精品自产在线 | 日本大香蕉| 人人贴人人摸| 99久热精品99re6热| 日韩综合无码色欲vv| 九一精品牛牛一区二区| 青娱乐欧美激情一区二区| 久久色一区二区| 亚洲AV成人无码一二三久久| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 干美女人妻| 日韩午夜啪啪视频| 欧美色图欧美| 猛交交| 久久精品国产Aⅴ| 欧美日韩淫加| 天天操人人操狠狠插| 超碰98综合网| 亚洲精品第一| 91天天综合在线| 六月激情网| 欧美激情综合| 久久久久久九九九九-美女久久久久久久-成人AV | 色色五月天婷婷| 9Ⅰ老熟女| 日本97久久久精品| 中文字幕一区电影在线观看| 天天在线91| 91美女丝袜诱惑视频| 国产高清成人免费视频| 久久深夜无码| 黄色视频特级毛片| 综合五月天| 视频在线观看一二三区| 国产视频一区二区三区在线免费观看| 天天舔天天日天天射| 久久婷婷综合国际产色怕| 超碰97人妻自拍| 爱射综合| 在线观看成人性爱免费小视频| 97天天在线| 六月婷婷综合| 久久午夜鲁丝片| 亭亭在线资源| 亚洲中文字幕噜噜噜久久久| 69XX一中文字幕人妻91| 青青草日韩免费观看高清在线| 亚洲国产一区二区三区四区国产| 欧美色图91| 欧美精品双插| 亚洲精品三| 999久久久免费精品国产牛牛| 熟女网站最新| 97自拍视频在线| 九九视频黄色片| 老鸭窝成人| 91最新综合| 无码少妇精品一区二区60岁老人| 久久久久97| 毛片麻豆91糖心精品毛情片| 精品一区二区三区蜜桃臀赵总 | 国产精品久久久久久无码红治院| 欧洲亚洲人妻无码高清久久三区四区| 嗯嗯啊啊啊好舒服| 人看人人摸人人操| 亚洲av成人精品一区| 日韩八十路老熟女| 91在线综合网| 亚洲女毛多水多21P| 狠狠婷婷亚洲中文综合久久| 九一国产精品| 亚洲人在线| 超碰久热| 欧美日韩国产黄色片| 97免费在线观看| 亚洲精品人伦一区二区| 神马福利久草| 人人做人人妻人人夜视频| 欧美亚洲自拍另类人妻| 久热这里| 91天天c| 老鸭窝亚洲毛片| JULIA一区二区三区在线播放| 人人操 欧美| 啊啊啊慢点| 六月婷婷一区二区三区| 无码99| 97色色婷婷| 精品久久久久久中文| 中国人高清www色视频免费| 97人妻人人躁人人玩人人| 久久天天躁日日躁狠狠躁| 大香蕉亚洲中文| 亚洲福利中文字幕在线| 中文精品一区二去| 精品国产乱码久久| 日天天九九天堂666| 亚洲日韩欧美一区二区| 亚洲中文字幕乱码无码一区二区| 久青草影院| 一级性爱aaaa| 手机在线中文字幕国产| 国产无码久久高清| 91亚洲欧洲| 97超级久久| 尤物视频偷拍免费| 久久女同性恋一二区| 极品粉嫩一区二区| 成人综合色网| 天天做天天爱天天爽| 欧美性爱系列| 1024人妻熟女一区二区三区| 亚洲伊人a线观看视频| 2018天天日天天日| 亚洲美女av无码| 精…码一二三区| 欧美性夜| 久久99国产精品| 欧美成人精品欧美一级乱黄一区二… | 久久久91| 91性网| 在线天堂资源亚洲| 中文字幕一区二区三区四五区| 嫩草 我啊~嗯~在线| 91欧美性| 东北操逼| 超碰欧美97资源| 久久中久文96| 国产2.3.4区| 欧美色图99| 亚洲精品电影| 高清无码人妻久久久一区二区三区aⅴ| 欧美综合色| 欧美激情亚洲| 中文字幕激情小说| 99夜夜操| 三久久久四久久久久| 精品99999| a片自拍直播视频| 国产精品高潮呻吟av久久4虎| 激情小说日韩无码| 免费观看性欧美一级| 91深夜夜| 人人操人人操草草| 黑人黄片在线免费观看| 五月婷婷爱六月丁香色| 99热这里只有精品8| 丰满人妻-区二区三区免费| 亚洲 图片 综合91| 男人的天堂在线2| 九九九久久久久| 91精品国产乱码| 91欧美少妇| 大香蕉淫人网| 久久性爱视频免费看| 欧美精品23| 欧美大香蕉专区网| 丁香六月婷婷综合| 国产熟女少妇一区| 综合 青草 伊久久 影院 综合 | 欧美国产日韩清纯唯美| 九久久九精品视频| 丝袜美腿校园春色| 欧美日韩97在线| 欧美性暴力猛交| 亚洲欧美国产va在线播放频| 日韩精品碰碰| 国产18精品亚洲精品| 无码99| 麻豆黄四叶草网站| 好爽免费视频,| 啊啊啊啊好多水| se吧提供91精品国产91久久久久久 | 操香逼| 亚洲欧美91√| 91亚洲欧洲| 草草影院日本第一页| 91超碰人人操| 顶级少妇BT天堂| 97久久国产亚洲精品超碰热| 亚州综| 国产一区二区三区久久久精品| 欧美日韩操逼嗦吊| 内射白嫩美女| 亚洲综合一| 精品一区二区三区丰满熟女-亚洲欧美一区| 国产无吗在线播放| 精品国产久热在线观看| 青娱乐av在线| 久久9999| 台湾一区国产高清在线| 99久久精品国产高潮| 亚洲欧洲美腿丝袜| 久久色AV线| 丁香婷婷五月| 国产 丝袜 欧美中文 另类| 国产免费大片| 国产青青综合伊人| 日韩AV无码网站| a在线观看| 欧美国产成人在线| 最近二区三区视频大全| 温婉少妇玩3p| 老女人日韩美91| 久久宗合97| 91人妻最真实刺激绿帽| 首页亚洲国产高跟丝袜诱惑视频| 96国产污污污丝袜| 91精品老女人| 日本护士高潮| 北京美女一区二区| 久操97| 99久在线精品99re8| 亚洲激情色片| 超碰95| 91一起操| 超碰在97| 五月婷婷丁香六月丁香| 蜜臀久久99精品久久综合| 91精品少妇搡搡搡| 国产亚洲性生活视频播放| 九色97| 久久久天堂| 18禁的网站在线| 久久最新视频免费观看| 凹凸精品熟女在线观看| 久久性爱免费送| 日韩欧美天天爽爽爽天天爽爽| 色综合一本| 中文字幕黑人大片| 骚货操死你| 欧美三级中文字幕hd| 欧洲精品人妻| 囯戸精品高潮呻吟旡码| 视频在线观看一二三区| 热热色中文无码| 久久激情综合| 懂色av中文字幕| 国产三区免费在线观看| baiduhicn.com。| 日韩中文字幕视频| 怡红院怡春院| 日韩视频中文字幕| 天美精品av| 青草成人免费视频一COm| 成人网址在线观看| 精品人妻一区二区蜜桃视频 | 2026国产精品视频| 在线综合 亚洲 欧美中文字幕|