I have a quite simple question on convention, when should methods actually have ref or out parameters in C#?
How does this fit in to following good OOP and not just laziness or bad design?
As one example I have come across the class MembershipProvider (from .NET System.Web.Security) that has a CreateUser method that has an out for MembershipCreateStatus and returns a MembershipUser.
Is the reason behind it basically for when there are cases information is needed from the method but it would not be appropriate/can not be returned from the method?
Thanks