Tôi có một số mãLàm thế nào để nạp của dll trong debug trong VS2013
var aa = a();
b(aa);
Trong khi gỡ lỗi, tôi đặt một breakpoint trên b()
gọi. Sau đó, đi đến cửa sổ ngay lập tức , tôi muốn có thể thực thi mã từ một DLL nằm trong dự án của tôi nhưng chưa được tải. Nói rằng tôi muốn có một số Boo
mới và gọi Foo()
. Mã nằm trong không gian tên Baz
trong dll Spongle.dll
.
Khi tôi gõ
>> new Baz.Boo().Foo(aa)
tôi nhận được lỗi: Loại hoặc namespace tên 'Baz' không hợp lệ trong phạm vi này.
Nếu tôi thay đổi mã của mình sao cho số Boo
của tôi đã được tải thì hoạt động tốt.
new Boo(); // dummy to ensure loading
var aa = a();
b(aa);
Có thể tải dll từ cửa sổ ngay lập tức trong khi gỡ lỗi để tôi có thể gọi mã của tôi cho dù nó được tải (chưa) ?. Tôi có thể sử dụng new Boo()
làm khởi tạo tĩnh của lớp chính của ứng dụng, nhưng sau đó tôi gặp vấn đề trong khi kiểm thử đơn vị vì nó sẽ không liên quan đến lớp với bộ khởi tạo tĩnh đó.
Không gian tên là 'Baz' và không được bao gồm trong câu hỏi của tôi. –
Phải có một cái gì đó bạn đã bỏ qua, như tôi đã không bao giờ có vấn đề bạn đang mô tả. Bạn có thể hiển thị định nghĩa đầy đủ về lớp Boo của mình không? –
@Nathan A: Dùng bất kỳ DLL nào bạn sử dụng trong ứng dụng của bạn, gỡ lỗi một bài kiểm tra đơn vị không sử dụng dll đó, đặt điểm ngắt và thử instantiating từ dll đó trong cửa sổ ngay lập tức –