Useful Tools For .NET Developers

Productivity of an application is of the utmost importance  in a developer's life and it's been difficult to write quality and standard code all alone, without any help. So, to ease this process, tools have become important to quickly improve our coding standards. Also, they provide us relief by making our work easy.

Today, we will discuss about the useful .NET tools that ease the development process.

There are many advantages of these tools. Some of them are listed below:

  • Increase performance and productivity
  • Make our life easier by helping inside the IDE in a very unique way
  • Establish an easy workflow to transfer your rough code to productive one
  • Help in writing best and standard code
  • Generate analysis report of static code

So, let’s move on to discuss these tools.

Resharper is a Visual Studio extension which can analyze the code for the quality of all the major flavors including ASP.NET, XAML, C#, VB, Typescript, ASP.NET MVC and XML. It can remove errors and smell the code quality by giving hotfixes at runtime, to fix from available options. Refactor on the fly. Extended search for any type of files to any method. Extended intellisense with documentation and hotfixes. Code Standard and Style with formatting options and a lot more and very exciting features.

dotTrace can detect performance overheads in a different variety of fashions. It analyzes the issues and gives a timeline of performance bottlenecks in the form of events, like UI Freezes, excessive garbage collection, uneven workload distribution etc. It also checks the SQL queries for performance and slowness in your application. The best thing is that without leaving your IDE, you can get reports, view performance timelines, analyze call stacks and do many more profiling options.

Elmah (Error Logging Modules and Handlers) as the name suggests, is an error logging module for unhandled exceptions. It has one time web configuration in web.config file, and then you start receiving errors as it happens in real time, to analyze them in a better manner.

You can get the following facilities, once properly configured:

  • Log of nearly all unhandled exceptions.
  • A web page to remotely view all the logged exceptions, with details link and full stack trace.
  • Email of the logged exceptions as they happen, along with the mails containing the original yellow screen of death error.
  • An RSS feed of the items.
  • Export to CSV facility.
  • Paging of the error with latest on the top and you can check the previous one also
  • Logged exceptions data stored in SQL table.

.Net Reflector can give you control over the third party assemblies, by decompiling the assemblies and debugging to find the code issues quickly. You can get the decompiled assembly objects in tree form in the object explorer, to navigate through into it. Search quickly in navigating items by typing to find certain objects or items you require for your work.

LINQPad is a .NET Programmers Playground as per company statement and that’s true because it is not for only LINQ queries. You can also test any C#/F# or VB code snippets instantly. You can query into the LINQ or SQL. It has a built in debugger for the best user experience.

Postman is a fantastic app for Chrome for sending and receiving the HTTP Requests using postman request builder. You can write your own test cases to validate the data. You can test the request  whether it passes or fails. If it meets certain criteria, it can show you the graphically good points, else not.

SQL Server Profiler is a very useful tool to analyze the issues -  either the slow SQL queries, or stored procedures, or enabling the traces to find out certain issues, by analyzing the trace results in a file. The trace is saved in the form as a result of events fired.

Benefits

  • Step to the problems to find out the issue scenario
  • Find and fix the slow running queries
  • Capture the events to diagnose the problem

Fiddler is a free tool to view and debug the HTTP Requests in your machine. The best thing about fiddler is that it can support all browsers to debug and trace the traffic. It also supports all the systems, like Mac, Windows, or Linux . Also, it supports any platform from .NET, Java, PHP, Python and Ruby on rails. It has many companion tools which can work with Fiddler, to extend the functionality by Geo-locating the requests. Fiddler Core can be integrated to the .NET applications to provide vast functionality.

Web Essentials is a Visual Studio extension. It extends the VS functionality by adding the new features which are required for many years. The features like extended VS shortcuts for tasks make life easier with extended intellisense and HTML/Css/Js minification for best productivity.

Productivity Power Tools is a VS extension that offers extended features for the best productivity and it is provided with best built in tools, to make life easier.

Features of Productivity Power Tools

  • Peek helps you open peek context definition inline in the editor, to show the definition from Microsoft library. You can navigate to the peek as well.
  • Solution Error Visualizer can help to get the detailed view of the error in your Solution Explorer tree, by highlighting the file and hovering over the file, and shows the details of the warning and error.
  • Filtering is a nice feature. Now, you can filter those files that contain errors or warnings, by clicking on the drop down in the Solution Explorer toolbar.
  • Built in options to turning on and off the features you require.
  • Structure Visualizer lets you check the scope of the class or method in which you are working. Just hover to the working line to know about the parent.
  • Time stamp on the output window with debug information.
  • Going to the definition is a hefty task to do. You do that by pointing the mouse and pressing the F12 key. Then, you can view the definition in a new window. But using the productivity tools, you can do this with ease. The power suite makes the definitions as a link. So, you just click or hover on the link, and the suite shows the peek definition of the method in the same page at which you are working.
  • Line compression lets you compress the empty space line so that it can vertically show in the editor.
  • Quick Tasks option lets you do tasks, like on or off line numbers, increase font size, and on & off word wrap.

Newton Soft JSON.net is a popular json framework for .NET. It is free and open source and runs anywhere, on all .NET supported family devices.

Features

  • Serialize and deserialize Json with the power of JSON.Net
  • Query JSON like Xpath syntax
  • Very high performance as compared to JavascriptSerializer and dataContractJavascriptSerializer
  • XML support is available

CodeRush is an excellent productivity tool from DevExpress. It helps you code at a fast pace, do quick refactoring, run test cases and fix the bugs and errors faster than ever before.

Features

  • Built in decompiler
  • Fast development with automatic declarations (class, method, property and lot of more)
  • Powerful clipboard tools
  • Built in deep static code analysis features to analyze the code for bugs and errors
  • Best code formatting and cleanup features
  • Best code visualization tools

Nuget is the package manager. The client allows you to produce and consume packages. The nuget gallery is the collection where all the authors share their packages in a repository. When you add certain libraries using nuget package manager, it adds the required files to the solution and adds references, config settings, and changes the other files as needed when removed. It removes all the references.

NCrunch is an automated and concurrent testing tool for Visual Studio. It is the best tool as it runs tests without saving, and runs tests while you write your line of code. Besides automated testing, it gives you other useful information, like performance metrics and code coverage.

Features

  • Supports automatic and concurrent testing while you type inside your IDE.
  • Code Coverage gives you suggestions about your line of code by adding markers and other signs to show for exception as well; and it also lets you know either test is failed or passed, with the color markers of green and red.
  • Performance Metrics lets you know about every line of test under the test with execution time so that you have a better idea of what's going on.
  • Inline Exception Details can inform you about the exception originating during running tests so that you can get a better idea.
  • Small Memory Footprint uses your small amount of memory and does big things, and support for solutions having thousands of lines of code.
  • You can change the automated test run to manual as per your convenience.

NDepend is a VS Extension and productivity tool. It has a powerful engine for static code analysis. It has a wide range of features to analyze the code base.

Features

  • You can use it to analyze the code quality by using code rules.
  • Trend Monitoring lets you know the deep insights about all your code with trends, like line of code, lines of code violating the rules, and you can even write custom trends.
  • You can compare builds and code files.
  • Provides best insight and analytics about your application.
  • It provides valuable information about your build's health, like assembly versioning issues, assembly conflicts, and PDB file issues.
  • It is easy to install and it does code base quality.
  • It’s fast and light weight, and integrates with all versions of Visual Studio.