685
Phụ lục A: Giới thiệu một số công cụ .NET
dụng .NET Reflector, bạn có thể duyệt các lớp và các phương thức của một assembly, bạn có
thể khảo sát ngôn ngữ trung gian (Microsoft Intermediate Language
MSIL) do các lớp và
phương thức này sinh ra, và bạn có thể dịch ngược các lớp và phương thức sang C# hay
Visual Basic .NET.
Ví dụ, chúng ta sẽ sử dụng .NET Reflector để khảo sát assembly NUnitExample (đã được trình
bày ở mục A.4). Hình A-6 thể hiện assembly này khi được nạp vào .NET Reflector. Bên trong
.NET Reflector còn có những công cụ mà bạn có thể sử dụng để khảo sát thêm assembly này.
Để xem MSIL của một phương thức, bạn hãy nhắp vào phương thức này và chọn
Disassembler.
Ngoài việc xem MSIL, bạn cũng có thể xem phương thức ở dạng C# bằng cách chọn
Decompiler từ trình đơn Tools. Bạn cũng có thể xem phương thức này được dịch ngược sang
Visual Basic .NET hay Delphi bằng cách thay đổi tùy chọn
trong trình đơn Languages. Dưới
đây là đoạn mã do .NET Reflector sinh ra:
public void HashtableAddTest()
{
Hashtable hashtable1 = new Hashtable();
hashtable1.Add("Key1", "Value1");
hashtable1.Add("Key2", "Value2");
Assert.AreEqual("Value1", hashtable1["Key1"],
"Wrong object returned!");
Assert.AreEqual("Value2", hashtable1["Key2"],
"Wrong object returned!");
}