繼去年夏天Realm引入對.NET Core的支持,使開發(fā)者可以用C#來構(gòu)建移動應(yīng)用之后,Realm發(fā)布了Realm .NET。Realm .NET是一個可以讓開發(fā)者更好地集成他們的.NET技術(shù)棧的新組件集。
其中一個組件,是針對.NET的Global Notifier,可以實(shí)現(xiàn)大規(guī)模數(shù)據(jù)變動的高效分配。另外一個組件,為Universal Windows Platform增加Realm的實(shí)時同步和數(shù)據(jù)加密功能。還有一個組件,是Realm和Microsoft SQL Server之間的雙向數(shù)據(jù)連接器。
據(jù)Realm稱,他們針對.NET的Global Notifier進(jìn)行了優(yōu)化,可以觀測大規(guī)模數(shù)據(jù)變動,并及時通知對這些變動感興趣的客戶。激活Global Notifier的關(guān)鍵是實(shí)現(xiàn)INotificationHandler接口,這個接口定義了2個基礎(chǔ)方法:
ShouldHandle,用來指定客戶端希望觀測的Realm路徑。HandleChangesAsync,被觸發(fā)來來處理觀測到的變化;事實(shí)上,這個方法會被觸發(fā)2次:一次在變動發(fā)生之前,另一次在變動發(fā)生之后。最初針對UWP引入的Realm Mobile Database不包括對數(shù)據(jù)實(shí)時同步的支持,而Realm .NET完善了這一點(diǎn),同時也在iOS端和Android端支持?jǐn)?shù)據(jù)同步和加密。
最后,SQL Server連接器使得在新app中使用遺留的SQL Server數(shù)據(jù)庫成為可能。早前,Realm曾提供了一個PostgreSQL連接器,而針對其它數(shù)據(jù)庫,例如Orable、MongoDB等,的支持已經(jīng)在計劃中。
據(jù)Realm稱,Realm .NET對于C#集成的側(cè)重,使得實(shí)現(xiàn)可以跨主流微軟設(shè)備以及Android和iOS設(shè)備工作、離線數(shù)據(jù)優(yōu)先、數(shù)據(jù)實(shí)時同步的app成為可能。
查看英文原文:Realm Extends its .NET Stack Support with Realm .NET
感謝羅遠(yuǎn)航對本文的審校。