第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

c#的序列化究竟有什么用?

c#的序列化究竟有什么用?

C#
慕桂英3389331 2019-02-14 15:11:58
c#的序列化究竟有什么用?
查看完整描述

2 回答

?
慕運維8079593

TA貢獻1876條經(jīng)驗 獲得超5個贊

序列化是用來通信的,服務端把數(shù)據(jù)序列化,發(fā)送到客戶端,客戶端把接收到的數(shù)據(jù)反序列化后對數(shù)據(jù)進行操作,完成后再序列化發(fā)送到服務端,服務端再反序列化數(shù)據(jù)后對數(shù)據(jù)進行操作。說白了,數(shù)據(jù)需要序列化以后才能在服務端和客戶端之間傳輸。這個服務端和客戶端的概念是廣義的,可以在網(wǎng)絡上,也可以在同一臺機器的不同進程中,甚至在同一個進程中進行通信。在傳統(tǒng)編程中,對象是通過調(diào)用棧間接的與客戶端交互,但在面向服務的編程中,客戶端永遠都不會直接調(diào)用實例。不知道說的明不明白。

好吧,我說的確實不夠明白,你問的是為什么需要序列化,我只是說了序列化的一個應用。那我就來說說序列化的好處吧。不序列化也可以傳輸,但是無法跨平臺,安全性也無法保障。我說的是面向服務編程中的作用,在傳統(tǒng)編程中,你在表示層實例化一個業(yè)務對象,然后調(diào)用業(yè)務對象中的方法,你想過為什么能這樣調(diào)用嗎?這樣做耦合度太高,很不好。如果序列化以后通過特定的協(xié)議傳輸數(shù)據(jù)就不一樣了,表示層通過代理或通道向服務層發(fā)送特定的數(shù)據(jù)格式,這個數(shù)據(jù)就是序列化以后的,比如XML,服務端接收到以后要進行反序列化,生成服務端可識別的數(shù)據(jù)格式,比如一個類,然后對數(shù)據(jù)進行操作,再序列化發(fā)送到客戶端,客戶端再反序列化。這樣客戶端可以使用和服務端完全不同的開發(fā)平臺,只要它能夠?qū)?a >xml數(shù)據(jù)進行反序列化,而xml是具有工業(yè)標準的數(shù)據(jù)格式,基本各平臺都支持。這也適用于在進程間通信。如果在進程內(nèi)通信,也可以做到更高的安全性,對象不再通過調(diào)用棧交互,而是通過代理或通道。

查看完整回答
反對 回復 2019-03-01
?
一只萌萌小番薯

TA貢獻1795條經(jīng)驗 獲得超7個贊

序列化是將對象狀態(tài)轉(zhuǎn)換為可保持或傳輸?shù)母袷降倪^程。與序列化相對的是反序列化,它將流轉(zhuǎn)換為對象。這兩個過程結(jié)合起來,可以輕松地存儲和傳輸數(shù)據(jù)。

.NET Framework 提供兩種序列化技術:

二進制序列化保持類型保真度,這對于在應用程序的不同調(diào)用之間保留對象的狀態(tài)很有用。例如,通過將對象序列化到剪貼板,可在不同的應用程序之間共享對象。您可以將對象序列化到流、磁盤、內(nèi)存和網(wǎng)絡等等。遠程處理使用序列化“通過值”在計算機或應用程序域之間傳遞對象。

XML 序列化僅序列化公共屬性和字段,且不保持類型保真度。當您要提供或使用數(shù)據(jù)而不限制使用該數(shù)據(jù)的應用程序時,這一點是很有用的。由于 XML 是一個開放式標準,因此,對于通過 Web 共享數(shù)據(jù)而言,這是一個很好的選擇。SOAP 同樣是一個開放式標準,這使它也成為一個頗具吸引力的選擇。

通俗的說法就是序列化就是把類改成2進制溜文件方便存儲和傳輸數(shù)據(jù)



查看完整回答
反對 回復 2019-03-01
  • 2 回答
  • 0 關注
  • 859 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號