Another reason for partial files is to handle the case where part of the class definition is generated by the tool (and can be regenerated at some point), and the rest of the class is implemented by you.
In such cases, if you do not use a partial class, this will lead to overwriting your code or to the generation process, which makes it difficult to perform its work (if it can do it at all).
With partial classes in place, the generated code can be easily restored without touching your code.
Another good example of this is to use the DataContext classes for LINQ-to-SQL: really smart stuff is generated into one set of files of a partial class, and you can provide an implementation - for validation, etc. - in another partial class, safe, knowing that recreation will not ruin your work.
belugabob
source share