eShopOnWeb 项目教程
1. 项目介绍
eShopOnWeb 是由 Microsoft 维护的一个开源项目,旨在为学习 AZ-400 课程和 Learn 内容社区提供一个参考应用程序。该项目基于 ASP.NET Core 8.0,展示了一个分层应用程序架构,采用单体部署模型。eShopOnWeb 是一个电子商务网站的参考实现,适用于那些希望学习 ASP.NET Core 和现代 Web 应用程序架构的开发者。
2. 项目快速启动
2.1 克隆项目
首先,克隆 eShopOnWeb 项目到本地:
git clone https://github.com/MicrosoftLearning/eShopOnWeb.git
2.2 配置数据库
项目默认使用 SQL Server 数据库。如果你希望使用内存数据库,可以在 appsettings.json
文件中添加以下配置:
{
"UseOnlyInMemoryDatabase": true
}
2.3 运行数据库迁移
在 Web 文件夹中打开命令提示符,执行以下命令来创建数据库:
dotnet restore
dotnet tool restore
dotnet ef database update -c catalogcontext -p ../Infrastructure/Infrastructure.csproj -s Web.csproj
dotnet ef database update -c appidentitydbcontext -p ../Infrastructure/Infrastructure.csproj -s Web.csproj
2.4 启动应用程序
在 Web 文件夹中运行以下命令启动应用程序:
dotnet run --launch-profile Web
应用程序启动后,可以通过浏览器访问 https://localhost:5001/
查看网站。
3. 应用案例和最佳实践
3.1 单体架构的应用
eShopOnWeb 展示了如何使用单体架构构建一个电子商务网站。这种架构适合中小型应用,开发和部署相对简单。
3.2 分层设计
项目采用了分层设计,将业务逻辑、数据访问和用户界面分离,提高了代码的可维护性和可扩展性。
3.3 使用 Blazor WebAssembly
eShopOnWeb 的 Admin 页面使用了 Blazor WebAssembly,展示了如何在 ASP.NET Core 中集成 Blazor 技术。
4. 典型生态项目
4.1 eShopOnContainers
eShopOnContainers 是 eShopOnWeb 的姐妹项目,专注于微服务和容器化的应用架构。它展示了如何使用 Docker 和 Kubernetes 部署和管理微服务。
4.2 ASP.NET Core 官方文档
ASP.NET Core 官方文档提供了丰富的教程和最佳实践,帮助开发者深入理解 ASP.NET Core 的各个方面。
4.3 Azure Developer CLI
Azure Developer CLI 是一个开发者工具,用于快速创建和管理 Azure 应用程序。eShopOnWeb 支持使用 Azure Developer CLI 进行部署。
通过以上教程,你可以快速上手 eShopOnWeb 项目,并了解其在实际开发中的应用和最佳实践。