Câu hỏi: PRN222 - Chương 7: SignalR và giao tiếp thời gian thực
27 câu trắc nghiệm kèm lời giải của môn Advanced Cross-Platform Application Programming With .NET - Lập trình ứng dụng đa nền tảng nâng cao với .NET, xếp theo thứ tự nhập vào ngân hàng. Trang 2/2 — câu 21–27.
Danh sách câu hỏi
27/27 câuHết danh sách
21Which of the following statements about hubs in SignalR are true? (Choose 2 answers)4 lựa chọnDễ100% trả lời đúng
AThey manage client connections
BThey can call methods on clients
CThey store persistent messages
DThey require HTTPS
Lời giải
Mở trang câu hỏi này →Các câu hỏi về các trung tâm (hubs) trong SignalR như sau:
- Các trung tâm có thể quản lý kết nối của các client.
- Các trung tâm có thể gọi các phương thức trên các client.
- Các trung tâm lưu trữ các tin nhắn có tính bền vững.
- Các trung tâm yêu cầu HTTPS.
Trong đó, hai câu hỏi đúng là:
- Các trung tâm có thể quản lý kết nối của các client.
- Các trung tâm có thể gọi các phương thức trên các client.
Các trung tâm trong SignalR có thể quản lý các kết nối của các client và gọi các phương thức trên các client để thực hiện các tác vụ khác nhau.
22What is the main purpose of a SignalR hub?4 lựa chọnDễ100% trả lời đúng
ATo refresh the client browser automatically.
BTo act as a high-level pipeline allowing clients and servers to call methods on each other.
CTo send HTTP requests only from server to client.
DTo replace all API controllers in ASP.NET Core.
Lời giải
Mở trang câu hỏi này →Một SignalR hub là một lớp trung gian cao cấp cho phép các khách hàng và máy chủ gọi các phương thức vào nhau. Nó cho phép các ứng dụng thực hiện giao tiếp hai chiều giữa máy chủ và khách hàng, cho phép các máy chủ gửi thông tin đến các khách hàng và ngược lại. Điều này giúp tạo ra các ứng dụng thời gian thực, chẳng hạn như trò chơi trực tuyến, ứng dụng thời gian thực và các ứng dụng khác yêu cầu giao tiếp đồng bộ giữa máy chủ và khách hàng.
23Which method is used to add SignalR services to the DI container?4 lựa chọnDễ100% trả lời đúng
A
AddSignalR()B
UseSignalR()C
ConfigureSignalR()D
EnableSignalR()Lời giải
Mở trang câu hỏi này →Để thêm dịch vụ SignalR vào bộ chứa DI (Dependency Injection), bạn cần sử dụng phương thức AddSignalR(). Phương thức này cho phép bạn cấu hình và thêm dịch vụ SignalR vào ứng dụng ASP.NET Core của mình. Khi sử dụng AddSignalR(), bạn có thể cấu hình các tùy chọn như loại giao thức, số lượng kết nối và các tùy chọn khác để phù hợp với nhu cầu của ứng dụng. Ngoài ra, bạn cũng có thể sử dụng AddSignalR() để thêm dịch vụ SignalR vào ứng dụng ASP.NET Core trong môi trường phát triển hoặc sản xuất.
24What is MessagePack?4 lựa chọnDễ100% trả lời đúng
AA database query language.
BA binary serialization format used by SignalR.
CA JavaScript library.
DA network protocol.
Lời giải
Mở trang câu hỏi này →MessagePack là một định dạng serialize binary được sử dụng để chuyển đổi dữ liệu giữa các ngôn ngữ lập trình khác nhau. Nó được thiết kế để có kích thước nhỏ và tốc độ nhanh chóng, giúp giảm thiểu thời gian truyền dữ liệu qua mạng. MessagePack được sử dụng rộng rãi trong các ứng dụng cần truyền tải dữ liệu nhanh chóng và hiệu quả, chẳng hạn như SignalR, một thư viện truyền thông thực thời gian cho ASP.NET. Nó cũng được sử dụng trong các ứng dụng khác như Node.js và Python. MessagePack có thể serialize các dữ liệu phức tạp như mảng, đối tượng và chuỗi, giúp giảm thiểu thời gian truyền dữ liệu và tăng hiệu suất ứng dụng.
25Which of the following is a key feature of SignalR for ASP.NET Core?4 lựa chọnDễ80% trả lời đúng
AServer-side rendering only.
BAutomatic reconnection handling.
CLimited support for modern web standards.
DDependency on Internet Explorer.
Lời giải
Mở trang câu hỏi này →SignalR là một thư viện cho ASP.NET Core cho phép tạo ứng dụng thời gian thực. Một trong những tính năng quan trọng của SignalR là khả năng tự động quản lý kết nối lại. Điều này có nghĩa là nếu kết nối bị mất do lỗi mạng hoặc do người dùng đóng trang, SignalR sẽ tự động cố gắng kết nối lại mà không cần người dùng phải thực hiện bất kỳ hành động nào. Tính năng này giúp đảm bảo rằng ứng dụng thời gian thực luôn hoạt động ổn định và không bị gián đoạn. Ngoài ra, SignalR cũng hỗ trợ các tính năng khác như gửi tin nhắn thời gian thực, cập nhật trạng thái thời gian thực, v.v.
26Which connection is used by Blazor Server for UI updates?4 lựa chọnDễ80% trả lời đúng
AHTTP
BgRPC
CSignalR
DWebSocket only
Lời giải
Mở trang câu hỏi này →Blazor Server sử dụng SignalR để cập nhật giao diện người dùng. SignalR là một thư viện ASP.NET cho phép thực hiện giao tiếp thực thời gian giữa client và server. Khi bạn sử dụng Blazor Server, giao diện người dùng được cập nhật thông qua SignalR. Điều này cho phép giao diện người dùng được cập nhật ngay lập tức mà không cần phải tải lại trang web. SignalR sử dụng các kết nối WebSocket để thực hiện giao tiếp thực thời gian giữa client và server.
AOnGet() only
BOnGetAsync() only
CCompilation error
DRuntime error
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Runtime error". Khi chọn handler, Razor Pages bỏ hậu tố "Async" khỏi tên phương thức. Do đó OnGet và OnGetAsync cùng quy về một handler cho phương thức GET, và bộ chọn DefaultPageHandlerMethodSelector tìm thấy HAI ứng viên cùng khớp nên ném InvalidOperationException với thông báo nhiều handler cùng khớp. Đây là lỗi phát sinh LÚC CHẠY. Trình biên dịch không báo lỗi vì hai phương thức có tên khác nhau là hoàn toàn hợp lệ trong C#, nên phương án "Compilation error" bị loại; và framework không tự ưu tiên bản đồng bộ hay bất đồng bộ, nên "OnGet() only" và "OnGetAsync() only" đều sai.