Tôi biết đó là Windows PE32, nhưng tôi cũng biết rằng đơn vị triển khai trong .NET là một hội đồng mà lần lượt có một tệp kê khai và có thể được tạo thành từ nhiều mô-đun được quản lý.Mô-đun được quản lý .NET là gì?
Câu hỏi của tôi là:
1) Làm thế nào bạn sẽ tạo ra nhiều mô-đun quản lý khi xây dựng một dự án như một lib lớp hoặc một ứng dụng giao diện điều khiển, vv
2) Có cách nào để xác định này để trình biên dịch (thông qua các thuộc tính dự án chẳng hạn) để phân vùng các tệp mã nguồn của bạn thành nhiều mô-đun được quản lý. Nếu vậy thì lợi ích của việc làm như vậy là gì?
3) Có thể quản lý các mô-đun span hội đồng?
4) Có phải tệp riêng được tạo trên đĩa khi mã nguồn được biên dịch hay được tạo ra trong bộ nhớ và được nhúng trực tiếp trong một hội đồng không?
EDIT:
@ Jon:
Đối 2): Vì vậy, không biên dịch/nguồn xây dựng trong visual studio luôn tạo một module quản lý duy nhất? Nếu vậy thì tôi không hiểu tại sao VS không cung cấp một cơ chế để làm như vậy mặc dù thực tế là NET hỗ trợ làm như vậy. Tôi đồng ý rằng sẽ không thể quản lý được để tạo một hội đồng với các mô-đun từ các ngôn ngữ khác nhau. Đó có phải là lý do duy nhất tại sao .NET cho phép tạo ra các mô-đun đa mô-đun? Tôi đọc trong CLR của Richter thông qua C#, mô-đun cũng có thể mở rộng cụm, và điều này có thể giúp giảm kích thước bộ nhớ bằng cách tải xuống theo yêu cầu khi chức năng nhất định được gọi lần đầu tiên, nhưng tôi không chắc tại sao một người muốn mở rộng một mô-đun qua các hội đồng, tại sao không chỉ tạo ra một hội đồng mới mà sự tạo ra implicity tạo ra một mô-đun mới trong tiến trình. Bạn vẫn sẽ đạt được những lợi ích tương tự.
Mục 4) liên quan đến tệp ".netmodule". Là một phần của quá trình xây dựng VS, tôi chưa thấy bất kỳ tệp ".netmodule" nào được tạo trong thư mục obj. Tôi thường nhận thấy tệp .pdb, .dll/.exe và tệp * FileListAbsolute và do đó câu hỏi về việc liệu có bất kỳ tệp riêng biệt nào được tạo cho các mô-đun được quản lý hay không.
EDIT: @Jon: Đây là trích đoạn từ CLR qua C# (ấn bản thứ 3) Pg 43: Có thể tôi đang hiểu sai điều này. có thể tải xuống theo yêu cầu.
"Ví dụ, lắp ráp có thể bao gồm nhiều loại. Bạn có thể đặt các loại được sử dụng thường xuyên trong một tệp và các loại ít được sử dụng hơn trong một tệp khác. Nếu lắp ráp của bạn được triển khai bằng cách tải xuống qua Internet, các tập tin với các loại được sử dụng không thường xuyên có thể không bao giờ phải được tải xuống cho khách hàng nếu khách hàng không bao giờ truy cập các loại. Ví dụ: nhà cung cấp phần mềm độc lập (ISV) chuyên về các điều khiển giao diện người dùng có thể chọn triển khai các loại Trợ năng hoạt động trong một mô-đun riêng biệt (để đáp ứng các yêu cầu về Logo của Microsoft) Chỉ những người dùng yêu cầu khả năng truy cập bổ sung các tính năng sẽ yêu cầu mô-đun này bị ngắt oaded.
Bạn định cấu hình ứng dụng để tải xuống tệp lắp ráp bằng cách chỉ định phần tử codeBase (được thảo luận trong Chương 3) trong tệp cấu hình của ứng dụng.Yếu tố codebase xác định một URL trỏ đến nơi mà tất cả các tập tin của một hội đồng có thể được tìm thấy "
@Jon: Cảm ơn bạn đã trả lời. Tôi không có đủ ký tự để bao gồm nhận xét của mình trong không gian này vì vậy tôi đã thêm chúng vào bài đăng gốc. Thông tin chi tiết sẽ được đánh giá cao. –
@Jon: Bạn nói đúng. cuốn sách không nói rằng một mô-đun có thể mở rộng các hội đồng. Tôi hiểu sai điều đó. nhưng nó nói rằng một module có thể được tải về theo yêu cầu. Tôi đã bao gồm đoạn trích từ CLR qua C# (ấn bản thứ 3) Pg 43 trong bài đăng gốc. –