GetProperty() возвращает null как я понял - C#
Формулировка задачи:
У меня есть несколько типов репортов и у каждого есть свой пример так скажем
selectreport - это object,которому я присваиваю переменные например типа PlayerReport или ModerReport у всех них есть public string ExampleReport,которому присвоено значение
В C# не особо прям шарю,прошу помочь и понятно обьяснить,что я делаю не так
switch (tab.Text) { case "Жалобы на игроков": selectreport = onPlayersReport; break; case "Жалобы на персонал": electreport = onStaffReport; break; } PrimerBox.Text = selectreport.GetType().GetProperty("ExampleReport").ToString(); //System.NullReferenceException //PrimerBox.Text = (selectreport as ModerReport).ExampleReport; - это работает,но у нас разные типы репортов
class PlayerReport { public string ExampleReport = @" 1. [b]Ник нарушителя:[/b] $intruder 2. [b]Мой ник:[/b] $MyNick 3. [b]Причина:[/b] $reason 4. [b]Доказательства:[/b] $compromat $dop # Это коментарий (Программа его не может читать и после него тоже!) Доступные переменные для написания жалобы: $intruder - ник нарушителя $MyNick - ваш ник $reason - указаная вами причина жалобы $compromat - коллекция скринов/видео $dop - доп. инфа "; public string MyNick; public string Intruder; public string Reason; public string dop; public string Generate() { string output = ExampleReport.Split('#')[0]; output = output.Replace("$intruder", Intruder); output = output.Replace("$MyNick",MyNick); output = output.Replace("$reason", Reason); output = output.Replace("$compromat", MainForm.compromat); output = output.Replace("$dop", dop); return output; } } class ModerReport { public string ExampleReport = @" 1. [b]Модер нарушивший правила:[/b] $intruder 2. [b]Ссылка на его профиль:[/b] $profile 3. [b]Мой ник:[/b] $MyNick 4. [i]Модератор[/i] $reason [b]игрока:[/b] $player 5. [b]Доказательства:[/b] $compromat 6. [b]Дата ошибки модератора:[/b] $date $dop # Это коментарий (Программа его не может читать и после него тоже!) Доступные переменные для написания жалобы: $intruder - ник модератора на которого жалоба $profile - его профиль $MyNick - ваш ник $reason - что нарушил модератор $player - какого игрока замутил/не замутил и тд. модератор $compromat - доказательства $date - дата ошибки модера $dop - доп. инфа "; public string MyNick; public string Intruder; public string IntrProfile; public string Reason; public string Player; public DateTime IntrDate; public string dop; }
Решение задачи: «GetProperty() возвращает null как я понял»
textual
Листинг программы
BaseReport selectreport = ...; switch (tab.Text) { case "Жалобы на игроков": selectreport = onPlayersReport; break; case "Жалобы на персонал": selectreport = onStaffReport; break; } PrimerBox.Text = selectreport.ExampleReport;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д