2016-10-27 60 views
0

羅斯林腳本允許評估包含了一個C#腳本只是對象創建表達式,從而有效地允許通過腳本反序列化對象:序列化到C#腳本

var script = "new Point { X = 1, Y = 2 }"; 
var point = await CSharpScript.EvaluateAsync<T>(script); 

是否有允許做反向序列化庫?

script = ???.Serialize(point); 
+1

那不是序列化,它的腳本,羅斯林解釋字符串作爲代碼。 – Gusman

+0

這個想法是以類似於JSON的方式使用它 –

+1

如果您只想序列化,請使用序列化,因爲腳本的評估代碼遠不止是序列化。 – Gusman

回答

0

因爲似乎沒有被現有的庫,可以做到這一點,我寫一個應該處理的簡單情況:https://github.com/AndriySvyryd/CSharpScriptSerializer

var input = new Point {X = 1, Y = 1}; 
var script = CSScriptSerializer.Serialize(input); 
var output = CSScriptSerializer.Deserialize<Point>(script);