Exploring the Visual Studio Test Platform

Today's Visual Studio Extension is one that can and will come in handy and is a must tool belt have...
Sometimes you've got an assembly, but no PDB or Source, and you just need to peek at how it works. Years ago, we highlighted the open source decompiler ILSpy, I spy with my little eye... ILSpy.
Today we're highlighting a Visual Studio Extension that makes ILSpy that much easier to use, almost too easy (insert "With great power, comes..." here)
Integration of the ILSpy Decompiler into Visual Studio.
Contents
- Overview
- Changelog
- Contact Information
Overview
ILSpy is a Visual Studio extension for the ILSpy open source decompiler.
In this v1.0, one integration feature is supported - Open in ILSpy via the context menu of the References node in a project:
And as is our wont, I installed it and use it on itself... :)
Now here's an ILSpy (or other like tool) trick, you can use it to view the source in a different language than it was written in.
Here's a C# assembly, viewed in VB.Net
You've not heard about ILSpy? Well we can't have that!
ILSpy is the open-source .NET assembly browser and decompiler.
...
ILSpy Features
- Assembly browsing
- IL Disassembly
- Support C# 5.0 "async"
- Decompilation to C#
- Supports lambdas and 'yield return'
- Shows XML documentation
- Decompilation to VB
- Saving of resources
- Save decompiled assembly as .csproj
- Search for types/methods/properties (substring)
- Hyperlink-based type/method/property navigation
- Base/Derived types navigation
- Navigation history
- BAML to XAML decompiler
- Save Assembly as C# Project
- Find usage of field/method
- Extensible via plugins (MEF)
- Assembly Lists
Again, with great power... you have a choice as to how you use a tool like this. Good or bad, the choice you make is in your hands.
That said, this tool has saved my behind a few times and is one that must be in your tool belt.
BTW, you did catch that the entire tool and many of it's components are open source, right? IE. you've don't NEED this tool to decompile it, the source for just about everything is already available and is just a clone or fork away... :)
Follow @CH9
Follow @coding4fun
Follow @gduncan411
ILSpy is awesome. There's also a plugin for LINQPad which integrates it http://vincpa.github.io/linqpadspy/
This conversation has been locked by the site admins. No new comments can be made.