平常在編碼中常常會遇到一些情況下需要重寫序列化與反序列化的方法. 例如一時間的格式等等. 下面我們用一個Graph結構來舉例.
Graph的節點 public interface INode { int Type { get; set; } string Name { get; set; } } 假定我們的節點有很多種 public class BlueNode:INode { public int Type { get; set; } = 1; public string Name { get; set; } = "Blue Node"; } public class GreenNode:INode { public int Type { get; set; } = 2; public string Name { get; set; } = "Green Node"; } public class RedNode:INode { public int Type { get; set; } = 3; public string Name { get; set; } = "Red Node"; } Graph的結構(因爲是舉例序列化與反序列化,因此Graph中我們省掉了Edges) public class Graph { /// <summary> /// 圖的名稱 /// </summary> public string Name { get; set; } /// <summary> /// 創建圖的時間 /// </summary> public DateTime CreateTime { get; set; } = DateTime.
dotnet core 3.1之後,支援在發佈時候以single file的方式,可以將runtime,依賴項,以及自身全部打包到一個文件內中。也同時支援mac、linux、windows等作業系統的跨系統交叉編譯的方式發佈對應平臺的包。 具體操作:
#eg. windows-x64 dotnet publish -c Release -p:PublishSingleFile=true -r win-x64