Search code examples
c#exceptioncoding-stylemessage

Do you end your exception messages with a period?


I've seen both exception messages with and without a period. And I can think of some reasons of why both could be good.

  • No dot would give you the freedom to add the period or leave it out if you wanted to. Could be useful if the message was going in some sort of a title bar or something.
  • With a dot, you would always know that you had a "complete sentence" and it looks more finished.

Which one do you recommend?

Could also be an issue in localized resource strings. Obviously, you can't put a period after everything (would look weird with periods after text on buttons and menu items, etc.). But should you then leave the period out from everything to be consistent and add it later where useful? Or would you rather put a period where it seems fit? For example, after all resource strings and exception messages that are sentences, but not after those that are words. But then, how about very short sentences? Like, "Create a new file", for example. Could maybe leave out periods for strings that were considered actions as well... (Just thinking while I'm typing here...)

Not the most important thing in the world, I know, but small things like this that tend to bug me after a while. I like consistency and to know why I do what I do. Problem is, I'm not sure which one to go for :p


Solution

  • Yes I usually treat the exception messages as full sentences, ending them with a period.

    However, the message in the exception is meant for the developer, and not the end user. It may very well be that the same underlying exception should result in two different messages for the end user, depending on the context in which the exception-throwing method was called.

    You really should show less technical, more user friendly messages to the user.