Introduction to eShop Reference Application - "AdventureWorks"
The eShop Reference Application, also known as "AdventureWorks", is a comprehensive .NET-based project crafted to demonstrate a fully functional e-commerce website. It serves as a template for developers looking to build robust, service-oriented architectures using .NET Aspire.
Key Features
This application showcases the integration of various modern development practices and tools, making it an ideal starting point for anyone interested in building e-commerce solutions using .NET. The architecture of eShop is based on microservices, which ensures scalability and ease of maintenance.
Getting Started with eShop
Prerequisites
To embark on your journey with the eShop project, the first step is cloning the repository from GitHub: eShop GitHub Repository. Additionally, Docker Desktop must be installed and running, as it plays a crucial role in managing containerized services.
Setting Up the Development Environment
For Windows Users Using Visual Studio:
- Install Visual Studio 2022 (version 17.10 or newer).
- Select the relevant workloads during installation, including ASP.NET and web development, .NET Aspire SDK, and optionally, .NET Multi-platform App UI development.
Alternative Setup (Without Visual Studio):
- On Windows: Use PowerShell to configure the necessary environment tools automatically.
- On Mac/Linux: Install the latest .NET 9 RC 2 SDK.
For All Platforms:
- Visual Studio Code, along with necessary extensions, can be utilized as an alternative IDE.
- Make sure Docker is initiated before launching the application.
Running the Application
To run the eShop application, ensure Docker is active. Windows users can use Visual Studio, open the eShop.Web.slnf
file, and set eShop.AppHost.csproj
as the startup project. Pressing Ctrl-F5 launches Aspire. Alternatively, using command-line tools across platforms, you can run:
dotnet run --project src/eShop.AppHost/eShop.AppHost.csproj
This command provides a unique URL to access the Aspire dashboard.
Integrating Azure OpenAI
The eShop project supports Azure OpenAI integration. By modifying the eShop.AppHost/appsettings.json
, developers can configure connections to Azure OpenAI services, enhancing the application's capabilities.
Hosting on Azure with Azure Developer CLI
For developers interested in deploying eShop on Azure, the Azure Developer CLI offers a streamlined approach:
- Install or update Azure Developer CLI.
- Authenticate and initialize the project within Azure.
- Deploy and manage resources via simple CLI commands.
Contributing to eShop
The eShop project is open for contributions. Those interested can refer to the contribution guide and adhere to the Code of Conduct.
Sample Data Utilization
The eShop project includes a sample catalog defined in catalog.json
. The product details and images are generated using advanced AI tools, ensuring a comprehensive demonstration of the application's capabilities.
Additional Resources
For further deployment instructions on Azure, the eShop on Azure repository provides additional documentation and resources tailored to Azure-specific deployments.
The eShop Reference Application serves as an invaluable resource for developers aiming to build modern, scalable, and efficient e-commerce applications using .NET technologies. With its detailed setup and running instructions, along with Azure integration, it stands as a pillar of learning and application in the realm of e-commerce solutions.