Tutorials ASP.NET Core MVC Tutorial

ViewImports — Complete Guide

ViewImports — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of ASP.NET Core MVC Tutorial on Toolliyo Academy.

On this page

ASP.NET Core MVC Tutorial · Lesson 46 of 200

ViewImports

Getting Started ✓Core MVC ✓Data & SecurityProductionCareer

Intermediate · 4 — Models, Routing & DI · ~6 min · Section 4: Views & Razor

What is this?

A layout is a master page — usually Views/Shared/_Layout.cshtml — with shared header, footer, and nav. Individual pages fill the middle via @RenderBody().

Why should you care?

Without a layout you would copy the same navbar HTML on 100 pages. Change the logo once in _Layout and every page updates.

See it live — copy this example

Create an MVC project (dotnet new mvc), add the code, and run dotnet run.

@* _Layout.cshtml *@
<!DOCTYPE html>
<html>
<body>
    <nav><a href="/">ShopNest</a></nav>
    <main>@RenderBody()</main>
    <footer>© 2026 ShopNest</footer>
    @await RenderSectionAsync("Scripts", required: false)
</body>
</html>

@* Index.cshtml *@
@{ Layout = "_Layout"; }
<h1>Welcome</h1>

Run Example »

Edit the code and click Run — like W3Schools Try it Yourself.

Code
Result

What happened?

  • _ViewStart.cshtml can set Layout = "_Layout" for all views automatically.
  • RenderBody is where page content goes.
  • Scripts section loads page-specific JS at the bottom.

Try it yourself

  1. Edit _Layout.cshtml navbar text and refresh any page.
  2. Add a footer line in the layout — confirm all pages show it.
  3. Create a Scripts section in one view with a console.log script.
  4. Change text or labels in the example and run again — watch the browser update.
  5. Break the code on purpose (remove a semicolon), read the error message, then fix it.

Remember

_Layout.cshtml wraps every page. @RenderBody() is the page content slot. _ViewStart.cshtml sets default layout.

Questions on this lesson 0

Sign in to ask a question or upvote helpful answers.

No questions yet — be the first to ask!

ASP.NET Core MVC Tutorial
Course syllabus

ASP.NET Core MVC Tutorial

Section 1: Introduction & Environment Setup
Section 2: ASP.NET Core Basics & Hosting
Section 3: Controllers
Section 4: Views & Razor
Section 5: Models & Data Passing
Section 6: Routing
Section 7: Dependency Injection
Section 8: Action Results
Section 9: HTML Helpers
Section 10: Tag Helpers
Section 11: Model Binding
Section 12: Validation
Section 13: State Management
Section 14: Filters
Section 15: Database & EF Core
Section 16: Authentication
Section 17: File Handling
Section 18: Advanced MVC
Section 19: Performance
Section 20: Deployment
Section 21: Enterprise Development
Section 22: Real-World Projects
Section 23: Interview Preparation
Toolliyo Assistant
Ask about tutorials, ebooks, training, pricing, mentor services, and support. I use public site content only—not admin or internal tools.

care@toolliyo.com

Need callback? Share your details