Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 547
  • Last Modified:

.Net C# code cleanup

Ok so I've been adding to this C# class that I've written and over time its become totally unorganized.  I'm new to .net so I'm not sure if I can do this but is there a tool that does basic code cleanup.

Mainly what I want is to alphabetize all the functions and the classes local variables as my codes been getting less readable as things have been getting added and that would really help.  Anybody with any .Net experience have any ideas as to if .Net has a code cleanup function.  

I've seen the edit>format thing which works ok but I'm mainly after alphabetizing my functions and variables.
0
ICPooreman
Asked:
ICPooreman
1 Solution
 
abelCommented:
This might do what you want, but I haven't tried it myself (though I know quite some people that were happy with it, it is a commercial product and I'm not sure you're after something like that): http://www.jetbrains.com/resharper/features/code_formatting.html
0
 
tcullerCommented:
My best advice would be to ditch alphabetizing your functions; that makes little sense, because you want to logically group your functions, not alphabetize them. If you're using Visual Studio (I surely hope you are, because it is truly the king of IDE's, especially for C#), I suggest using the #region and #endregion directives. Any code between these two directives can be collapsed, and the region can be labelled for easy use. For example, I have a custom code snippet that does the "skeleton" for this automatically, and it looks similar to the following:
namespace SomeNamespace
{
     public class SomeClass
     {
          #region Fields
          // ALL fields, public and private
          #endregion
 
          #region Construction
          // ALL overloaded constructors
          #endregion
 
          #region Properties
          // ALL properties
          #endregion
 
          #region Public Methods
          // Group each method and all overloads
          // in their own region.
          #region SomeMethod
          public void SomeMethod() {}
          public void SomeMethod(int someInt) {}
          public void SomeMethod(int someInt, string someString) {}
          #endregion
          // ALL public/internal methods, grouped as above
          #endregion
 
          #region Private Methods
          // ALL private/protected methods, grouped as above
          #endregion
 
          // Any other logical groupings, conforming to above.
     }
}

Open in new window

0
 
nmarunCommented:
I was going to suggest Resharper as well. I've used this add-on for quite some time now and I'll be honest.. I cannot do without it now. It is really helpful and saves quite a bit of time.
0
 
ICPooremanAuthor Commented:
Wow I just downloaded resharper... I've only been playing with it for several minutes but I'm already quite impressed.  Thanks this did the trick.
0
 
abelCommented:
maybe I should download it too, if all of you are so enthusiastic about it ;-)

> Wow I just downloaded resharper... I've only been playing with it for
> several minutes but I'm already quite impressed. Thanks this did the trick.

glad it helped you so well. Like I said: I should try it myself perhaps to cleanup some customer's code ;-)

Don't forget on the comment of tculler: using regions is quite a good thing and can be more helpful then alphabetizing... But that depends on your need, of course.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now