Khái niệm này là mới đối với tôi và một đồng nghiệp đã đề xuất nó. Đáng buồn thay, tôi không biết anh ta đang nói gì. Ai đó có thể khai sáng cho tôi không?Ai đó có thể giải thích các lợi ích của việc sử dụng Hội đồng Interop chính trong .Net?
Trả lời
Bạn có thể tìm thấy nhiều thông tin về nó here.
Tóm lại, PIA là một hội đồng interop có chữ ký cung cấp định nghĩa "chính thức" của các loại trong thư viện COM từ nhà xuất bản của thư viện COM.
Đối với những lợi ích, bài viết gửi tiền nó lên khá tốt:
PIAs quan trọng vì chúng cung cấp danh tính loại độc đáo. PIA phân biệt loại chính thức các định nghĩa từ giả định nghĩa được cung cấp bởi các hội đồng khác nhau . Có một loại duy nhất nhận dạng đảm bảo khả năng tương thích loại giữa các ứng dụng chia sẻ các loại được xác định trong PIA. Bởi vì PIA được nhà xuất bản của nó ký và được gắn nhãn với thuộc tính PrimaryInteropAssembly, nó có thể được phân biệt với các hội đồng khác interop xác định cùng loại.
Lắp ráp interop chính sẽ bao bọc giao diện COM thành các loại tương thích .NET. Nó không cung cấp cho bạn sự kiểm soát chi tiết bằng tay gọi các phương thức, nhưng nó đủ gần.
Nếu không có một PIA:
object _comObject;
Type _comObjectType;
_comObjectType = Type.GetTypeFromProgID("MyCompany.MyApplication.MyObject", true);
_comObject = Activator.CreateInstance(_comObjectType);
string name = (string)_comObjectType.InvokeMember("GetCustomerName", BindingFlags.InvokeMethod, null, _comObject, , new object [] { _customerId });
Với một PIA:
MyCompany.MyApplication.MyObject obj = new MyObject();
string name = obj.GetCustomerName(_customerId);
Đơn giản chỉ cần nói qua một ví dụ, nếu bạn muốn phát triển một ứng dụng giống như bất kỳ công cụ văn phòng khác (MS word, Visio ...) với chức năng mở rộng, bạn có thể sử dụng chức năng của các công cụ văn phòng trong dự án của bạn bằng cách sử dụng PIA.In ứng dụng vẽ sơ đồ lớp của tôi, sử dụng bảng điều khiển visio để tạo sơ đồ lớp.
- 1. Ai đó có thể giải thích lợi ích của đa hình?
- 2. Ai đó có thể giải thích MustOverride?
- 3. Ai đó có thể giải thích attr?
- 4. Ai đó có thể giải thích hành vi của "conj"?
- 5. Chính xác là lợi ích của việc sử dụng Punjab
- 6. Ai đó có thể giải thích DBCC DROPCLEANBUFFERS?
- 7. Ai đó có thể giải thích mạng nơron nhân tạo?
- 8. Ai đó có thể giải thích việc Ruby sử dụng các ký tự ống trong một khối không?
- 9. Ai đó có thể giải thích ASP.NET MVC cho tôi?
- 10. Có thể ai đó giải thích __declspec (trần truồng) không?
- 11. Ai đó có thể giải thích việc lọc regex này của một mảng
- 12. Ai đó có thể giải thích về Microsoft Unity?
- 13. Ai đó có thể Giải thích mã java này
- 14. Ai đó có thể giải thích eclipse.p2.profile
- 15. Nên lắp ráp hội đồng interop?
- 16. Ai đó có thể giải thích cho tôi khi sử dụng MapMaker hoặc WeakHashMaps không?
- 17. Lợi ích chính của MSMQ
- 18. Ai đó có thể giải thích đúng cách để sử dụng SBT không?
- 19. Cách giải quyết các hội đồng xung đột trong .Net?
- 20. Ai đó có thể giải thích nhà môi giới tin nhắn nào được sử dụng không?
- 21. Văn phòng chính Interop hội đồng không làm việc sau khi cài đặt gói tương thích 2007
- 22. Ai đó có thể giải thích dòng mã này?
- 23. Ai đó có thể giải thích cho tôi này `StaleDataException`
- 24. C# Ai đó có thể giải thích logic boolean này
- 25. Ai đó có thể giải thích Mutex và cách nó được sử dụng không?
- 26. lợi ích của việc sử dụng directoryperdb trong MongoDB
- 27. Ai đó có thể giải thích các số liệu có khả năng cho tôi? (Biểu thức chính quy)
- 28. Lợi ích chính của việc sử dụng Haskell để phát triển web là gì?
- 29. Lợi ích chính của việc sử dụng eval() trong JavaScript là gì?
- 30. Tên trong hội đồng interop có viết hoa sai
* Mọi hội đồng Interop sẽ làm điều đó, không chỉ là PIA – Joe