Saya tidak melihat pendekatan yang baik dengan notasi don dalam string, karena memiliki lebih banyak masalah dengan koleksi daripada pendekatan umum:
Misalnya Persion.Friends.Name
- Elemen mana yang merupakan array dalam rantai ini?
- Anda harus menerapkan konversi eksplisit untuk elemen koleksi (kemungkinan tempat bug)
Metode generik lebih dapat diandalkan dalam mendukung dan menggunakan:
var friends = await GetFieldValue<Person, Friend[]>("avi", x => x.Friends);
var names = friends.Select(x=>x.Name).ToArray();