[閒聊] C#大師請進

作者: SuicidePeko (string int = true;)   2021-10-07 22:02:28
我現在要做json回傳
然後根據種類不同 json內容 參數會有不同
我預想的結構大概像這樣
class JsonObject {
class Man : JsonObject
{
[JsonPropertyName("Length")]int length => { get; set; }
[JsonPropertyName("Width")]int width => { get; set; }
}
class Woman : JsonObject
{
[JsonPropertyName("Boob")]int boob => { get; set; }
[JsonPropertyName("Ass")]int ass => { get; set; }
}
}
大概就像是 前端來問 某人是男人還是女人
我要回傳一個答案
每當我回傳時 我會做
List<JsonObject> jsonList = new List<JsonObject>();
jsonList.Add(new JsonObject.Man());
JsonSerializer.Serialize(jsonList);
但是問題在於 實際做才發現這個Serialize會依照List定義的物件去做
這個情況下就是直接當作JsonObject處理
而因為JsonObject本身沒有參數
傳出去的json只會有一個空物件
[{}]
這種感覺 看起來很像咪口的肛門
所以這個架構好像不可行
想請問一下 怎麼設計可以更適合處理這種問題
我是想把Json物件都存在一起
方便之後加method什麼的 也比較好找
還是有更適合的整體規劃==
作者: Firstshadow (IamCatづミ'_'ミづ)   2021-10-07 22:04:00
Design pattern
作者: lopp54321010 (嘻嘻010)   2021-10-07 22:05:00
自己寫serializer
作者: Apache (阿帕契)   2021-10-07 22:05:00
gRPCprotobuf
作者: lopp54321010 (嘻嘻010)   2021-10-07 22:06:00
作者: Apache (阿帕契)   2021-10-07 22:07:00
作者: SuicidePeko (string int = true;)   2021-10-07 22:09:00
謝謝 不過我是想說這種用繼承包一起的做法到底對不對==還是有更適合的規劃 因為是我自己想出來的 所以感
作者: lopp54321010 (嘻嘻010)   2021-10-07 22:09:00
差異太大了 不好ㄅ
作者: devilkool (對貓毛過敏的貓控)   2021-10-08 00:53:00
救命,看到在C#寫小寫開頭的Property好想吐

Links booklink

Contact Us: admin [ a t ] ucptt.com