Số phương pháp/hoạt động tối đa có thể được hiển thị thông qua một Hợp đồng dịch vụ WCF đơn lẻ là gì?Dịch vụ WCF Số phương pháp tối đa
Trả lời
Không có tối đa. Bạn có thể có bao nhiêu tùy thích, AFAIK.
Tuy nhiên, có hay không thực tế là một vấn đề khác. Nó sẽ trở nên khá khó sử dụng nếu bạn có quá nhiều phương pháp trên một hợp đồng.
Mặc dù không có tối đa, bạn có thể gặp sự cố với Metadata Exchange
- và giá trị cấu hình sau và giá trị mặc định: maxNameTableCharCount
.
Trong khi cố gắng thêm một chức năng mới cho một hoạt động hiện WCF Service
, tôi gặp phải lỗi khi cố gắng để "Update Service Reference" - liên quan đến giá trị mặc định của maxNameTableCharCount
quá nhỏ để xử lý các kích thước của việc chuyển giao mex
.
Có thể ghi đè các giá trị mặc định cho Metadata Exchange
bằng cách thêm một tùy chỉnh mex binding
trong cấu hình máy chủ.
Bạn có thể thấy một thông báo lỗi như dưới đây khi bạn cố gắng thêm hoặc cập nhật tài liệu tham khảo dịch vụ của bạn nếu giá trị cấu hình được vượt quá:
Hạn ngạch số ký tự nametable tối đa (16384) đã bị vượt quá trong khi đọc Dữ liệu XML. Bảng tên là cấu trúc dữ liệu được sử dụng để chuỗi lưu trữ gặp phải trong quá trình xử lý XML - các tài liệu XML dài với các tên phần tử không lặp lại, tên thuộc tính và giá trị thuộc tính có thể kích hoạt hạn ngạch này. Hạn ngạch này có thể tăng lên bằng cách thay đổi thuộc tính MaxNameTableCharCount trên đối tượng XmlDictionaryReaderQuotas được sử dụng khi tạo trình đọc XML. Line 1, vị trí 332845.
điểm cuối máy chủ Mex nên được quy định như sau:
<endpoint address="mex"
binding="customBinding"
contract="IMetadataExchange"
name=""
bindingConfiguration="customMex"
listenUriMode="Explicit" />
Với một khối Tuỳ chỉnh Binding quy định như sau:
<customBinding>
<binding name="customMex">
<textMessageEncoding>
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
maxArrayLength="2147483647" maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
</textMessageEncoding>
<httpTransport transferMode="Buffered" maxReceivedMessageSize="2147483647"
maxBufferSize="2147483647"/>
</binding>
</customBinding>
Nó có thể giúp đỡ nếu bạn' đang chạy lại vào các vấn đề với nhiều phương thức trên một dịch vụ.
Giới hạn thực tế có thể không quá 10-12 phương pháp. Hơn thế nữa và bạn có lẽ không còn mô tả hoạt động của một thành phần đơn lẻ nữa. Tôi sẽ cố gắng thực sự khó khăn để cấu trúc lại bất kỳ thành phần nào với hàng tá hoạt động thành nhiều thành phần.
Điều đó nói rằng, tôi chắc chắn có ngoại lệ!
- 1. WCF đối số phương pháp dịch vụ, bool định
- 2. Dịch vụ WCF Không Với Phương pháp không được phép
- 3. WCF. Các phương pháp chung về dịch vụ
- 4. Dịch vụ WCF Hạn ngạch chiều dài mảng tối đa (16384) đã vượt quá
- 5. Phương pháp dịch vụ WCF không có trong WCF Test Client vì nó sử dụng loại
- 6. Phương pháp 'tối đa' trong Ruby
- 7. Điều chỉnh dịch vụ WCF
- 8. Dịch vụ WCF phơi bày DTO hoặc Pháp nhân
- 9. Dịch vụ WCF và Luồng
- 10. Dịch vụ RIA .NET/Dịch vụ WCF
- 11. Dịch vụ WCF và Dịch vụ Windows
- 12. Đăng nhập Cuộc gọi dịch vụ WCF với thông số tham số
- 13. Dịch vụ WCF Trả lại "Phương thức không được phép"
- 14. Số lần gửi tối đa
- 15. Phương thức HttpTransportSe.call() mất tối đa một phút để gọi dịch vụ web
- 16. Các phương pháp hay nhất để phiên bản dịch vụ của bạn với WCF?
- 17. Phương thức khởi động của Dịch vụ WCF ở đâu?
- 18. Dịch vụ Windows C# Phương pháp chính
- 19. Dịch vụ WCF instantiation qua IoC container
- 20. Sự khác biệt giữa Dịch vụ WCF, Dịch vụ WCF RIA và Dịch vụ Dữ liệu WCF
- 21. Phương pháp quá tải không được dịch vụ WCF hỗ trợ?
- 22. Gọi phương thức dịch vụ WCF thông qua trình duyệt
- 23. Tên phương thức dịch vụ WCF trong Nhật ký IIS
- 24. Đóng và hủy dịch vụ WCF
- 25. Điều chỉnh dịch vụ WCF
- 26. Đơn vị kiểm tra phương pháp WCF
- 27. Nhiệm vụ tối đa trong TPL?
- 28. WCF Đọc tối đa Ngoại lệ Độ sâu
- 29. Dịch vụ web wcf json
- 30. Triển khai Dịch vụ WCF
'mex' được sử dụng bởi các công cụ WCF để tạo ra một lớp proxy cho khách hàng, nhưng không bao giờ thực sự được sử dụng bởi chính máy khách. Vậy tại sao tệp cấu hình ứng dụng khách cần gắn kết này? – mcoolbeth
Bạn hoàn toàn đúng, cấu hình máy khách không yêu cầu bất kỳ cấu hình tương ứng nào. Tôi đã sửa đổi bài đăng ngay bây giờ, cảm ơn. – Tanner
Tôi chưa đạt được thành công nào theo phương pháp này. Tôi đang sử dụng ràng buộc netTcp cho dịch vụ của mình. Tôi đã tắt http và vì vậy tôi đã chỉ định tcpTransport thay vì httpTransport. Nhưng điều này vẫn không thành công khi tôi có một số lượng lớn các OperationContracts. Bất cứ ai có thể cung cấp bất kỳ đầu vào? –