Explore core concepts and important distinctions between ASP.NET Core and the traditional framework in this beginner-friendly quiz, designed to help you recognize architecture, compatibility, and major feature changes. Ideal for learners aiming to understand modern web development platforms and compare them clearly.
Which of the following statements accurately reflects ASP.NET Core's cross-platform capabilities compared to the classic framework?
Explanation: ASP.NET Core supports deployment on Windows, Linux, and macOS, making it truly cross-platform. The classic framework is limited to Windows. The options about mobile apps or proprietary devices are incorrect because ASP.NET Core is designed mainly for web applications. The 'Windows only' option refers to the older framework, not Core.
In what way does ASP.NET Core differ from the classic framework regarding open-source availability?
Explanation: The design and source code of ASP.NET Core are open for community contributions, whereas the classic framework is closed source. The statement that both are closed-source is incorrect. Classic is not open-source and the last option is false since ASP.NET Core embraces open-source principles.
Which feature is natively integrated into ASP.NET Core, unlike the classic framework, to help manage object dependencies?
Explanation: ASP.NET Core has built-in dependency injection, making it easier to manage services and object lifetimes. In the classic framework, dependency injection must be added through external libraries. The static files and 'no support' options ignore ASP.NET Core's important functionality, and 'direct editing of the runtime' is not related to dependency management.
What is a distinguishing difference in project file formats between ASP.NET Core and the classic framework?
Explanation: ASP.NET Core uses a simplified .csproj format, making project files easier to read and manage. Classic uses more detailed and complex .csproj or .vbproj files with extensive XML. JSON project files and config.txt are not standard for project structure in either framework.
How does the hosting model differ in ASP.NET Core when compared to the classic framework?
Explanation: ASP.NET Core can use an internal web server to self-host applications, increasing deployment flexibility. The classic framework expects apps to run under a dedicated web server and lacks native self-host support. The desktop application reference is irrelevant, and ASP.NET Core does not require only external servers.
Which statement best describes how configuration is managed differently in ASP.NET Core compared to the classic framework?
Explanation: ASP.NET Core can use various sources for configurations, such as JSON, environment variables, and command-line arguments. The classic framework primarily relies on XML files. The claim about code-only configuration and JSON-only configuration for the classic version is false.
What is a key server-related difference between ASP.NET Core and the classic framework?
Explanation: ASP.NET Core is designed to work with various web servers, including Kestrel, increasing its hosting versatility. The classic framework does not natively support Linux servers. ASP.NET Core is not restricted to legacy servers or mobile-only environments.
In ASP.NET Core, what is significant about how MVC and API controllers are handled compared to the classic framework?
Explanation: ASP.NET Core integrates MVC and API handling, so developers use one set of conventions for both. The classic framework keeps MVC and API in separate infrastructures. The distractors wrongly describe hosting requirements or incorrectly claim that ASP.NET Core lacks these features.
How does static file serving differ between ASP.NET Core and the classic framework by default?
Explanation: In ASP.NET Core, developers must actively enable static file middleware, making static file serving opt-in for added security. The classic framework usually serves static files by default. The claim about permanent blocking and requiring external tools is inaccurate.
What should developers consider regarding compatibility when migrating a classic framework app to ASP.NET Core?
Explanation: Migrating to ASP.NET Core usually requires adapting code because of API changes and removed features. In most cases, direct import or binary sharing does not work due to incompatibility. Compatibility tools do exist to assist, and migration is rarely completely seamless.