Я уверен, что видел это в различных сообщениях исключения в рамках. Я проверил следующие страницы из библиотеки MSDN, но не смог найти много рекомендаций для содержимого сообщения:
Бросок исключений
Сообщение об ошибках
Свойство Exception.Message
Единственная часть первой страницы, которая могла бы объяснить это, - это текст:
Не раскрывайте конфиденциальную информацию в сообщениях об исключениях не требуя соответствующих разрешений.
Это аргумент ArgumentException, созданный Dictionary < TKey, TValue > .Add метод, который напомнил мне об этой проблеме. Это выглядит так:
System.ArgumentException : An item with the same key has already been added.
Почему это не выглядит примерно так?
System.ArgumentException : An item with the same key(123) has already been added.
Это предполагает, что 123 - значение TKey, в основном любой формат с значением TKey - это то, что мне было бы полезно отслеживать ошибку при отладке.
Есть ли известная причина, почему это не включено?
Будет ли считаться неправильной практикой повторное исключение аргумента с ключом в сообщении? Я рассматривал возможность создания своего собственного подкласса исключений, но я думаю, что это случай, когда использование встроенного класса исключений кажется лучшим вариантом.