ฉันเพิ่งเผยแพร่แพ็คเกจ Nuget ที่ช่วยให้การตั้งค่าไม่เพียง แต่คุณสมบัติระดับแรก แต่ยังมีคุณสมบัติที่ซ้อนกันในวัตถุที่กำหนดในทุกระดับความลึก
นี่คือแพคเกจ
ตั้งค่าของคุณสมบัติของวัตถุตามเส้นทางจากรูท
วัตถุสามารถเป็นวัตถุที่ซับซ้อนและคุณสมบัติสามารถเป็นหลายระดับซ้อนกันได้ในระดับลึกหรืออาจเป็นคุณสมบัติโดยตรงภายใต้ราก ObjectWriter
จะค้นหาคุณสมบัติโดยใช้พารามิเตอร์เส้นทางคุณสมบัติและอัปเดตค่าของมัน พา ธ คุณสมบัติเป็นชื่อที่ต่อท้ายของคุณสมบัติที่เข้าชมตั้งแต่รูทจนถึงคุณสมบัติโหนดสุดท้ายที่เราต้องการตั้งค่าคั่นด้วยพารามิเตอร์สตริงตัวคั่น
การใช้งาน:
สำหรับการตั้งค่าคุณสมบัติโดยตรงภายใต้รูทวัตถุ:
กล่าวคือ LineItem
class มีคุณสมบัติ int ที่เรียกว่าItemId
LineItem lineItem = new LineItem();
ObjectWriter.Set(lineItem, "ItemId", 13, delimiter: null);
สำหรับการตั้งค่าคุณสมบัติที่ซ้อนกันหลายระดับใต้รูทวัตถุ:
กล่าวคือ Invite
ชั้นจะมีคุณสมบัติที่เรียกว่าState
ซึ่งมีคุณสมบัติที่เรียกว่าInvite
(จากเชิญชนิด) ซึ่งมีคุณสมบัติที่เรียกว่าซึ่งมีคุณสมบัติที่เรียกว่าRecipient
Id
เพื่อให้ได้สิ่งที่ซับซ้อนมากขึ้นที่สถานที่ให้บริการไม่ได้เป็นชนิดการอ้างอิงมันเป็นState
struct
นี่คือวิธีที่คุณสามารถตั้งค่าคุณสมบัติ Id (เป็นค่าสตริงของ“ outlook”) ที่ด้านล่างของแผนผังวัตถุในบรรทัดเดียว
Invite invite = new Invite();
ObjectWriter.Set(invite, "State_Invite_Recipient_Id", "outlook", delimiter: "_");
var val = Convert.ChangeType(propValue, propInfo.PropertyType);
แหล่งที่มา: devx.com/vb2themax/Tip/19599