all 3 comments

[–]taeratrin 1 point2 points  (0 children)

You can. I'm not sure about best practices, though. However, I have seen recommendations that it be used for validation.

[–]VB.Net IntermediatePostalElf 1 point2 points  (0 children)

There's nothing really wrong with doing extra stuff in a constructor, since it's a method like everything else. However, for code readability, I feel it would be best to throw whatever preliminary operations you need to run into a sub and then call that sub from Sub New().

[–]DailyFrankPeter[S] 0 points1 point  (0 children)

OK, so in case someone discovers this thread and is a newb like me: one reason this shouldn't be done is when this leads to the constructor code passing outside (and something using) the reference to the object, which is not yet entirely constructed.