当前位置: 首页 > news >正文

一篇文章学会开发第一个ASP.NET网页

*开发环境:Visual Studio 2022 + ASP.NET Core 6.0*

一、开发环境准备

1.1 安装必备工具

  • Visual Studio 2022 Community(免费版本)

  • .NET 6.0 SDK

验证安装:命令行执行 dotnet --version 显示6.0.x版本

1.2 创建新项目

  1. 打开VS2022 → 新建项目 → 选择「ASP.NET Core Web 应用」

  2. 项目模板选择「Web 应用(模型-视图-控制器)」

  3. 配置项目名称(例:FirstWebDemo)

  4. 其他设置保持默认 → 点击创建


二、项目结构解析

FirstWebDemo/
├── Controllers/      # 控制器目录
├── Views/            # 视图目录
├── wwwroot/          # 静态资源目录
└── Program.cs        # 程序入口

三、编写第一个页面

3.1 创建控制器

// Controllers/HomeController.cs
public class HomeController : Controller
{public IActionResult Index(){ViewData["Message"] = "欢迎来到我的第一个ASP.NET页面!";return View();}
}

3.2 创建视图

@* Views/Home/Index.cshtml *@
@{ViewData["Title"] = "首页";
}<div class="text-center"><h1 class="display-4">ASP.NET Core入门</h1><p>@ViewData["Message"]</p><p>当前时间:@DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")</p>
</div>

四、运行与调试

  1. 按F5启动调试

  2. 浏览器自动打开 https://localhost:7123

  3. 你将看到:

    • 动态显示的欢迎信息

    • 实时服务器时间

    • Bootstrap默认样式页面


五、添加自定义页面

5.1 新建About页面

// 在HomeController中添加
public IActionResult About()
{return View();
}

5.2 创建对应视图

@* Views/Home/About.cshtml *@
@{ViewData["Title"] = "关于我们";
}<h2>关于本网站</h2>
<p>这是使用ASP.NET Core构建的第一个示例网站</p>

六、常见问题排查

6.1 缺少.NET SDK

  • 症状:项目无法加载

  • 解决:访问.NET官网下载对应版本SDK

6.2 依赖项未还原

  • 症状:NuGet包错误

  • 解决:右键解决方案 → "还原NuGet包"

6.3 端口冲突

  • 解决:修改launchSettings.json中的端口号


七、学习建议

  1. 掌握Razor语法:@符号的使用

  2. 理解MVC模式:模型-视图-控制器的交互

  3. 学习中间件配置:Startup.cs文件的作用

  4. 推荐学习资源:

    • 微软官方文档

    • ASP.NET Core实战书籍

    • CSDN .NET技术社区


动手实践:尝试在页面中添加显示访问次数的功能(提示:使用Session或Cookie)

*原创声明:本文为CSDN博主「[LcVong]」原创,转载请附上原文出处链接。*

相关文章:

  • leetcode刷题——判断对称二叉树(C语言版)
  • 若依项目部署小结
  • 【KWDB 创作者计划】_上位机知识篇---MQTT协议
  • Java单例模式详解:实现线程安全的全局访问点
  • Spring Security:企业级安全架构的设计哲学与工程实践
  • 块压缩[比如etc] vs 传统图片压缩 优缺点对比
  • 【KWDB 创作者计划】_深度学习篇---向量指令集
  • 使用rclone迁移minio文件
  • Kubelet 可观测性最佳实践
  • 【C/C++】插件机制:基于工厂函数的动态插件加载
  • 2025年渗透测试面试题总结-拷打题库13(题目+回答)
  • 【redis】主从复制
  • 程序员学英文之Shipment Claim 运输和索赔
  • Node.js学习
  • Vite/Rollup 模块热更新
  • Python内置函数---bytes()
  • MySQL基础增删改
  • CDN加速http请求
  • 百万点数组下memset、memcpy与for循环效率对比及原理分析
  • 【大模型与AIGC深度解析】从核心概念到行业应用
  • 吉林建筑大学党委原书记崔征接受纪律审查和监察调查
  • 梁启超“失肾记”的余波:中西医论战与最后的真相
  • 云南洱源县4.8级地震:房屋受损442户,无人员伤亡报告
  • 王鹏任海南文昌市委书记
  • 基辅响起密集爆炸声,乌方称俄军发动大规模导弹袭击
  • 夸大事实拍视频发网络,镇雄两名网红勒索两千元删帖费被拘