Saya ingin mengurai pohon objek secara dinamis untuk melakukan validasi kustom. Validasi tidak penting seperti itu, tetapi saya ingin memahami kelas PropertyInfo dengan lebih baik.
Saya akan melakukan sesuatu seperti ini,
public bool ValidateData(object data)
{
foreach (PropertyInfo propertyInfo in data.GetType().GetProperties())
{
if (the property is a string)
{
string value = propertyInfo.GetValue(data, null);
if value is not OK
{
return false;
}
}
}
return true;
}
Sungguh satu-satunya bagian yang saya pedulikan saat ini adalah 'jika properti adalah string'. Bagaimana saya bisa mengetahui dari objek PropertyInfo jenis apa itu.
Saya harus berurusan dengan hal-hal dasar seperti string, int, double. Tetapi saya juga harus berurusan dengan objek, dan jika demikian saya perlu melintasi pohon objek lebih jauh di dalam objek tersebut untuk memvalidasi data dasar di dalamnya, mereka juga akan memiliki string, dll.
Terima kasih.
c#
.net
reflection
peter
sumber
sumber
string
danString
sama.string
adalah alias untukString
.string
alias untukSystem.String
. Ini bisa membuat perbedaan karena untuk menggunakanString
Anda harus menambahkanusing System;
garis. 2 sen saya;)Saya baru saja menemukan posting yang bagus ini. Jika Anda hanya memeriksa apakah datanya berjenis string maka mungkin kita bisa melewati loop dan menggunakan struct ini (menurut pendapat saya)
sumber