Qiz HUB Logo
QizHUB
QUESTION LIBRARY

Trang chủ
Môn học
Chủ đề
Đề thi
Câu hỏi
Thẻ

Đăng nhập
Qiz HUB Logo
QizHUB
QUESTION LIBRARY PLATFORM
Trang chủMôn họcChủ đềNhóm họcThẻ
Luyện đề ngayĐăng nhập
PrivacyTermsCookieAdsads.txtrobotssitemap
Trang chủMôn họcAdvanced Cross-Platform Application Programming With .NET - Lập trình ứng dụng đa nền tảng nâng cao với .NET
Hỗ trợ đào tạo

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

8Chủ đề
150Câu hỏi

PRN222 - Lập trình ứng dụng đa nền tảng nâng cao với .NET là môn học xây dựng ứng dụng web đa nền tảng bằng C# 12 và .NET 8 với ASP.NET Core. Ngân hàng câu hỏi trắc nghiệm PRN222 có đáp án bao quát trọn bộ chương trình: lập trình mạng trong .NET (địa chỉ IP, hostname, DNS, URI, giao thức mạng, TCP và UDP, TcpListener, TcpClient, Socket, AcceptSocketAsync, lớp Stream, HttpClient và GetAsync), lập trình bất đồng bộ và song song (async/await, Task, Task.Wait, Task.WhenAll, System.Threading.Tasks, Parallel.ForEach, Task Parallel Library, PLINQ và AsParallel, tác vụ I/O-bound và CPU-bound), Dependency Injection cùng Inversion of Control và nguyên lý SOLID (AddScoped, AddTransient, AddSingleton, vòng đời service, constructor injection, property injection, IServiceProvider, Dependency Inversion, Open Closed), ASP.NET Core MVC (controller, action, IActionResult, ViewResult, HttpPost, Bind, Compare, directive @model, cú pháp Razor, ViewData và ViewBag, PartialView, thư mục wwwroot, model binding, model validation với ModelState), Razor Pages (file .cshtml, thư mục Pages, PageModel, handler OnGet và OnPost, AddRazorPages, BindProperty, _Layout.cshtml, TempData, Session, Cookies, tiêm phụ thuộc vào PageModel, kiểm tra dữ liệu phía client bằng jQuery Unobtrusive Validation), Blazor (Blazor Server và Blazor WebAssembly, hai chế độ render, component, App.razor, directive @page, @bind, @inject, khối @code, thuộc tính Parameter, C# Everywhere), giao tiếp thời gian thực với SignalR (lớp Hub, IHubContext, Clients, Groups.AddToGroupAsync, Hub filters, MessagePack, tự động kết nối lại, namespace Microsoft.AspNetCore.SignalR, AddSignalR, Context, User) và Worker Service cùng BackgroundService (IHostedService, Microsoft.Extensions.Hosting, ExecuteAsync, StartAsync, StopAsync, CancellationToken, appsettings.json, tác vụ nền, xử lý hàng đợi), kèm Entity Framework Core và DbContext. Tài liệu ôn thi FE dành cho sinh viên FPT University.

Chủ đề học tập

Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 1: Lập trình mạng trong .NET

Chương 1 môn PRN222. Lập trình mạng trong .NET ở môn PRN222: địa chỉ IP, hostname, DNS, URI, số hiệu cổng, giao thức TCP và UDP. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm TcpListener với AcceptSocketAsync, TcpClient, UdpClient, Socket, lớp Stream, HttpClient và GetAsync để tiêu thụ web API, WebRequest.Create, phương thức HTTP, mã trạng thái HTTP, header Authorization và khái niệm firewall. Chương 1 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
18+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 2: Lập trình bất đồng bộ và song song

Chương 2 môn PRN222. Lập trình bất đồng bộ và song song trong PRN222 với C# 12 và .NET 8: async/await, Task, Task.Wait, Task.WhenAll, TaskScheduler và Task Parallel Library. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm Parallel.For, Parallel.ForEach, PLINQ với AsParallel, namespace System.Threading.Tasks, phân biệt tác vụ I/O-bound với CPU-bound, khi nào Task.Run làm treo giao diện, cùng kiến trúc Von Neumann và công nghệ Hyper-Threading. Chương 2 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
18+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 3: Dependency Injection và IoC

Chương 3 môn PRN222. Dependency Injection và Inversion of Control trong PRN222: vòng đời service AddSingleton, AddScoped, AddTransient và cách chọn đúng vòng đời. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm constructor injection, property injection cho phụ thuộc tuỳ chọn, method injection, ServiceCollection, IServiceProvider, container built-in Microsoft.Extensions.DependencyInjection, cùng nguyên lý SOLID với Dependency Inversion và Open Closed. Chương 3 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
15+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 4: ASP.NET Core MVC

Chương 4 môn PRN222. ASP.NET Core MVC trong PRN222: controller, action, IActionResult, ViewResult, PartialView và attribute HttpPost. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm directive @model cho strongly-typed view, cú pháp Razor, ViewData và ViewBag dùng chung một kho dữ liệu, bẫy ép kiểu InvalidCastException, model binding, model validation với ModelState.IsValid, attribute Bind và Compare, thư mục wwwroot chứa file tĩnh. Chương 4 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
17+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 5: ASP.NET Core Razor Pages

Chương 5 môn PRN222. ASP.NET Core Razor Pages trong PRN222: file .cshtml, lớp PageModel kết hợp Controller và ViewModel, handler OnGet và OnPost. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm directive @page và @model, thư mục Pages làm gốc định tuyến, AddRazorPages trong Program.cs, attribute BindProperty, layout dùng chung _Layout.cshtml, quản lý trạng thái với TempData, Session và Cookies, kiểm tra dữ liệu phía client bằng jQuery Unobtrusive Validation. Chương 5 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
20+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 6: Blazor Server và WebAssembly

Chương 6 môn PRN222. Blazor trong PRN222: hai mô hình Blazor Server và Blazor WebAssembly, hai chế độ render và ưu nhược điểm của từng loại. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm component tái sử dụng viết bằng C# và HTML, component gốc App.razor, directive @page, @bind cho binding hai chiều, @inject, khối @code, thuộc tính Parameter nhận dữ liệu từ component cha, Blazor Server cập nhật giao diện qua SignalR, cùng DbContext của Entity Framework Core. Chương 6 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
18+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 7: SignalR và giao tiếp thời gian thực

Chương 7 môn PRN222. SignalR và giao tiếp thời gian thực trong PRN222: lớp Hub, kết nối bền vững hai chiều giữa client và server, đăng ký dịch vụ bằng AddSignalR. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm namespace Microsoft.AspNetCore.SignalR, đối tượng Context và Clients, IHubContext để gửi message từ ngoài hub, Groups.AddToGroupAsync, Hub filters, định dạng nhị phân MessagePack, tự động kết nối lại, khởi tạo connection.start và bắt sự kiện phía client. Chương 7 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
26+Câu hỏi
Lập trình ứng dụng đa nền tảng nâng cao với .NET

PRN222 - Chương 8: Worker Service và tác vụ nền

Chương 8 môn PRN222. Worker Service và tác vụ nền trong PRN222: lớp BackgroundService, interface IHostedService và namespace Microsoft.Extensions.Hosting. Bộ câu hỏi trắc nghiệm có đáp án và giải thích bao gồm override ExecuteAsync, CancellationToken để dừng dịch vụ êm, vòng lặp kết hợp Task.Delay chạy theo chu kỳ, StartAsync và StopAsync, đăng ký worker trong Program.cs, đọc cấu hình từ appsettings.json qua dependency injection, xử lý message hàng đợi và lý do không dùng Task.Run trong controller. Chương 8 giáo trình PRN222, ôn thi FE cho sinh viên FPT University.

0Bộ đề
18+Câu hỏi

Đề thi trắc nghiệm

Xem tất cả
QIZ // CORE

PRN222

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

Đề thi thử PRN222 - Bộ 50 câu FE có đáp án

PRN222
50Câu hỏi
0Lượt làm
—Chưa có
QIZ // CORE

PRN222

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

Đề thi chính thức PRN222 SP26 FE - 50 câu có đáp án

PRN222
50Câu hỏi
0Lượt làm
—Chưa có
QIZ // CORE

PRN222

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

Đề thi lại PRN222 SP26 RE - 50 câu có đáp án

PRN222
50Câu hỏi
0Lượt làm
—Chưa có
Học từ ngân hàng câu hỏi

Bắt đầu một phiên học theo môn

Tiến độ của bạn sẽ luôn được tính toán và đồng bộ trực tiếp theo tổng số lượng câu hỏi mới nhất của môn học này.

150Ngân hàng hiện tại
--Tiến độ môn
Số câu hỏi
Dải câu hỏi Độ khó tổng thể: Đang tính
Đăng nhập để theo dõi tiến độ theo môn và tiếp tục phiên học đang dở.
Phiên sắp tạo
150 câu Chế độ học Trộn
Bạn cần đăng nhập để bắt đầu học từ ngân hàng câu hỏi và lưu tiến độ theo môn.
0Dễ · --
0Trung bình · --
0Khó · --
--Đã học
--Đang nắm chắc
Đăng nhập để xemLần hoàn tất gần nhất
Đăng nhập để bắt đầu học từ ngân hàng câu hỏi, lưu tiến độ theo môn, resume phiên đang dở và cập nhật thống kê dài hạn.

Ngân hàng câu hỏi

Xem trước · Cuộn vô hạn
Xem tất cả
Đang hiển thị 8 / 150 câu hỏi
Bấm vào từng câu để xem đáp án
#001
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AStartAsync()
StopAsync()ĐÚNG
CRunAsync()
DExecute()
Giải thích

Khi ứng dụng đang shutting down, phương thức được gọi là khi ứng dụng đang tắt. Phương thức này thường được sử dụng để thực hiện các hành động cần thiết trước khi ứng dụng tắt, chẳng hạn như lưu trữ dữ liệu tạm thời, kết nối mạng, hoặc thực hiện các tác vụ cuối cùng. Trong trường hợp này, phương thức được gọi là StopAsync().

#002
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
Processing queue messagesĐÚNG
BRunning Blazor UI
CDisplaying Razor Pages
DHosting REST APIs only
Giải thích

Các kịch bản phù hợp nhất cho Worker Services là các trường hợp xử lý hàng đợi (queue messages). Worker Services được thiết kế để chạy trong nền và xử lý các tác vụ lặp đi lặp lại, chẳng hạn như xử lý hàng đợi. Điều này giúp giảm tải cho ứng dụng web và cải thiện hiệu suất. Ngoài ra, Worker Services cũng có thể được sử dụng để chạy các tác vụ độc lập, chẳng hạn như gửi email hoặc thông báo. Tuy nhiên, các kịch bản như chạy UI Blazor, hiển thị Razor Pages hoặc chỉ hosting REST APIs không phù hợp với Worker Services vì chúng yêu cầu tương tác trực tiếp với người dùng hoặc yêu cầu hiển thị UI.

#003
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
The entry point for background execution.ĐÚNG
BThe constructor.
CA logging method.
DA thread initializer.
Giải thích

Trong mã nguồn C#, ExecuteAsync là phương thức được sử dụng để thực hiện các tác vụ nền (background tasks). Nó là phương thức được gọi khi một đối tượng thực hiện các tác vụ nền (background service) được tạo ra. Phương thức này được sử dụng để thực hiện các tác vụ nền một cách độc lập và không ảnh hưởng đến luồng chính của chương trình. Trong ví dụ trên, Worker là một lớp thực hiện các tác vụ nền và ExecuteAsync là phương thức được sử dụng để thực hiện các tác vụ nền này. Phương thức ExecuteAsync được gọi khi Worker được tạo ra và nó sẽ thực hiện các tác vụ nền một cách độc lập.

#004
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo manage database transactions.
To allow the service to be gracefully stopped.ĐÚNG
CTo encrypt data.
DTo manage user sessions.
Giải thích

CancellationToken là một tham số quan trọng trong phương thức ExecuteAsync(CancellationToken) trong lập trình. Mục đích chính của tham số này là cho phép dịch vụ được dừng một cách êm ái (gracefully stopped) khi cần thiết. Điều này có nghĩa là khi dịch vụ cần được dừng lại, tham số CancellationToken sẽ được đặt thành trạng thái đã hủy (canceled), từ đó cho phép dịch vụ thực hiện các hành động cần thiết để dừng lại một cách an toàn và không gây ra lỗi. Ví dụ, dịch vụ có thể thoát khỏi các nguồn hệ thống, đóng các kết nối mạng, hoặc thực hiện các hành động khác cần thiết để dừng lại một cách êm ái. Mục đích của CancellationToken là đảm bảo rằng dịch vụ được dừng lại một cách an toàn và không gây ra lỗi khi cần thiết.

#005
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AOnly for the duration of an HTTP request.
Until the application is manually stopped.ĐÚNG
COnly for the duration of a database transaction.
DOnly for the duration of a user session.
Giải thích

Một Worker Service trong ASP.NET Core là một loại ứng dụng web không tương tác, chạy nền và không có giao diện người dùng. Nó được sử dụng để thực hiện các tác vụ lặp đi lặp lại, chẳng hạn như gửi email, cập nhật dữ liệu cơ sở dữ liệu hoặc thực hiện các tác vụ khác mà không cần tương tác với người dùng. Thời gian tồn tại của một Worker Service thường kéo dài cho đến khi ứng dụng được dừng lại thủ công. Điều này có nghĩa là Worker Service sẽ tiếp tục chạy cho đến khi ứng dụng được dừng lại hoặc bị lỗi. Điều này cho phép Worker Service thực hiện các tác vụ lặp đi lặp lại mà không cần phải khởi động lại sau mỗi lần thực hiện.

#006
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo handle HTTP requests.
To define the main logic of the background task.ĐÚNG
CTo manage database connections.
DTo define user interfaces.
Giải thích

Phương thức ExecuteAsync(CancellationToken) trong lớp BackgroundService có vai trò quan trọng trong việc định nghĩa logic chính của nhiệm vụ chạy nền. Phương thức này được gọi khi BackgroundService được khởi tạo và sẽ chạy liên tục cho đến khi ứng dụng bị dừng. Trong phương thức này, bạn có thể thực hiện các tác vụ như đọc dữ liệu từ cơ sở dữ liệu, xử lý dữ liệu, gửi thông báo, v.v. Mục đích chính của phương thức này là thực hiện các tác vụ nền mà không ảnh hưởng đến giao diện người dùng. Ví dụ, bạn có thể sử dụng phương thức này để gửi thông báo hàng ngày hoặc hàng giờ, hoặc để cập nhật dữ liệu trên cơ sở dữ liệu.

#007
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ABy writing JavaScript functions.
By using appsettings.json and dependency injection.ĐÚNG
CBy using static HTML files.
DBy using database queries.
Giải thích

Để xử lý các thiết lập cấu hình trong một Worker Service, bạn có thể sử dụng file appsettings.json và dependency injection. File appsettings.json được sử dụng để lưu trữ các giá trị cấu hình dưới dạng key-value, trong khi dependency injection giúp bạn có thể dễ dàng inject các giá trị cấu hình vào các lớp của ứng dụng. Điều này giúp bạn có thể dễ dàng quản lý và thay đổi các thiết lập cấu hình mà không cần phải sửa đổi mã nguồn của ứng dụng. Ngoài ra, sử dụng appsettings.json và dependency injection còn giúp bạn có thể dễ dàng phân chia và quản lý các giá trị cấu hình giữa các môi trường khác nhau, chẳng hạn như môi trường phát triển, thử nghiệm và sản xuất.

#008
—
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AControllerBase
BackgroundServiceĐÚNG
CDbContext
DViewComponent
Giải thích

Để thực hiện một Worker Service, bạn thường sử dụng lớp cơ sở BackgroundService. Lớp này được thiết kế để chạy nền và thực hiện các tác vụ lặp đi lặp lại mà không cần tương tác trực tiếp với người dùng. BackgroundService cung cấp các phương thức như StartAsync và StopAsync để quản lý vòng đời của dịch vụ. Ngoài ra, nó cũng hỗ trợ các tính năng như đồng bộ hóa và lỗi để giúp bạn xây dựng các dịch vụ đáng tin cậy và hiệu quả.

Cuộn để tải thêm…