ฉันเพิ่งเผยแพร่แพ็คเกจ Nuget ที่ช่วยให้การตั้งค่าไม่เพียง แต่คุณสมบัติระดับแรก แต่ยังมีคุณสมบัติที่ซ้อนกันในวัตถุที่กำหนดในทุกระดับความลึก
นี่คือแพคเกจ
ตั้งค่าของคุณสมบัติของวัตถุตามเส้นทางจากรูท
วัตถุสามารถเป็นวัตถุที่ซับซ้อนและคุณสมบัติสามารถเป็นหลายระดับซ้อนกันได้ในระดับลึกหรืออาจเป็นคุณสมบัติโดยตรงภายใต้ราก ObjectWriterจะค้นหาคุณสมบัติโดยใช้พารามิเตอร์เส้นทางคุณสมบัติและอัปเดตค่าของมัน พา ธ คุณสมบัติเป็นชื่อที่ต่อท้ายของคุณสมบัติที่เข้าชมตั้งแต่รูทจนถึงคุณสมบัติโหนดสุดท้ายที่เราต้องการตั้งค่าคั่นด้วยพารามิเตอร์สตริงตัวคั่น
การใช้งาน:
สำหรับการตั้งค่าคุณสมบัติโดยตรงภายใต้รูทวัตถุ:
กล่าวคือ LineItemclass มีคุณสมบัติ int ที่เรียกว่าItemId
LineItem lineItem = new LineItem();
ObjectWriter.Set(lineItem, "ItemId", 13, delimiter: null);
สำหรับการตั้งค่าคุณสมบัติที่ซ้อนกันหลายระดับใต้รูทวัตถุ:
กล่าวคือ Inviteชั้นจะมีคุณสมบัติที่เรียกว่าStateซึ่งมีคุณสมบัติที่เรียกว่าInvite(จากเชิญชนิด) ซึ่งมีคุณสมบัติที่เรียกว่าซึ่งมีคุณสมบัติที่เรียกว่าRecipientId
เพื่อให้ได้สิ่งที่ซับซ้อนมากขึ้นที่สถานที่ให้บริการไม่ได้เป็นชนิดการอ้างอิงมันเป็นStatestruct
นี่คือวิธีที่คุณสามารถตั้งค่าคุณสมบัติ 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