您好,登錄后才能下訂單哦!
這篇文章主要介紹了c#中反射和序列化的作用,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
反射和序列化是不同的:
反射:是指程序可以訪問、檢測和修改它本身狀態或行為的一種能力,程序集包含模塊,而模塊包含類型,類型又包含成員。反射則提供了封裝程序集、模塊和類型的對象,可以通過反射動態地創建類型的實例,將類型綁定到現有的對象,或從現有對象中獲取類型,然后可以調用類型的方法或訪問其字段和屬性。
c#中反射,實際上就是動態使用類庫,可以通過名稱來引用類及其成員。
序列化序列化基本是指把一個對象保存到文件或流中,比如可以把文件序列化以保存到Xml中,或一個磁盤文件中。
序列化: 序列化是將對象轉換為容易傳輸的格式的過程,比如轉化為二進制、xml、json從而在網絡中傳輸。與序列化相反的是反序列化,它將流轉換為對象,也就是將在序列化過程中所產生的二進制串、XML、Json等轉換成數據結構或對象的過程。將序列化和反序列化兩個過程接合起來,可以輕松地存儲、傳輸數據。
什么是序列化與反序列化?
序列化和反序列化,我們可能經常會聽到,其實通俗一點的解釋,序列化就是把一個對象保存到一個文件或數據庫字段中去,反序列化就是在適當的時候把這個文件再轉化成原來的對象使用。
當兩個進程在進行遠程通信時,彼此可以發送各種類型的數據。無論是何種類型的數據,都會以二進制序列的形式在網絡上傳送。發送方需要把這個對象轉換為字節序列,才能在網絡上傳送;接收方則需要把字節序列再恢復為對象。
把對象轉換為字節序列的過程稱為對象的序列化。
把字節序列恢復為對象的過程稱為對象的反序列化。
常見的序列化的方法:
1、BinaryFormatter
2、SoapFormatter
3、XML序列化
感謝你能夠認真閱讀完這篇文章,希望小編分享c#中反射和序列化的作用內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。