title: Is there a tool to disassemble a single .NET type along with all of its dependencies?
body: <p>Suppose I wish to disassemble a type. But this type depends on other types in the same assembly and so forth. In a sense, I wish to be able to disassemble the closure defined by a particular type.</p>
  
  <p>I am not interesting in disassembling to C#. Plain IL code is fine, just like ildasm produces it.</p>
  
  <p>Thanks.</p>
  
  <p><strong>EDIT1</strong></p>
  
  <p>It is very important for me to be able to recompile the code back again. It is because of this that I cannot use Reflector, which produces illegal C# code from the compiler perspective for all, but the most simple cases. It is very useful to learn the code and debug it, if you have the Pro version, but not to disassemble and reassemble it back.</p>
  
  <p><strong>EDIT2</strong></p>
  
  <p>BTW, the same is true for the IL code generated by the Reflector - it is not suitable for recompilation, unlike the code produced by ildasm, which is. Granted, Reflector produces much more readable code, alas - not for the compiler.</p>