Open skgithubtest[bot] opened 1 month ago
{ "steps": [ { "step": "1", "description": "Set up the project structure and initial configuration for the ToDo application.", "subtasks": [ { "subtask": "Create the project in Visual Studio", "description": "Initialize a new C# ASP.NET Core Web API project for the ToDo application.", "prompt": "Create a new ASP.NET Core Web API project named 'ToDoApp' in Visual Studio with default settings." }, { "subtask": "Set up Application Insights", "description": "Integrate Application Insights for monitoring and performance management.", "prompt": "Add Application Insights to the ASP.NET Core Web API project 'ToDoApp' and configure it for basic telemetry." }, { "subtask": "Implement security best practices", "description": "Ensure security configurations are applied to the application.", "prompt": "Implement security best practices in the ASP.NET Core Web API project 'ToDoApp', including middleware for HTTPS redirection and CORS configuration." } ] }, { "step": "2", "description": "Design the database schema and implement data access logic.", "subtasks": [ { "subtask": "Define the database schema", "description": "Create the database schema for the ToDo items.", "prompt": "Write the SQL code to create a 'ToDoItems' table with columns: Id, Title, Description, IsCompleted, CreatedAt." }, { "subtask": "Set up Entity Framework Core", "description": "Add Entity Framework Core to the project for data access.", "prompt": "Add Entity Framework Core to the ASP.NET Core project 'ToDoApp' and configure it to connect to the SQL database." }, { "subtask": "Create the data context", "description": "Implement the data context class to interact with the database.", "prompt": "Write the C# code for a DbContext class named 'ToDoContext' that manages the 'ToDoItems' table." } ] }, { "step": "3", "description": "Implement the core business logic for ToDo items.", "subtasks": [ { "subtask": "Create the ToDo item model", "description": "Define the ToDo item model class.", "prompt": "Write the C# code for a class named 'ToDoItem' with properties matching the 'ToDoItems' database schema." }, { "subtask": "Implement the repository pattern", "description": "Create a repository class for managing ToDo items.", "prompt": "Write the C# code for a repository class named 'ToDoRepository' that implements CRUD operations for the 'ToDoItems' table." } ] }, { "step": "4", "description": "Develop the API controllers to handle HTTP requests.", "subtasks": [ { "subtask": "Create the ToDo controller", "description": "Implement the API controller for ToDo items.", "prompt": "Write the C# code for a controller named 'ToDoController' with endpoints for CRUD operations using the ToDoRepository." }, { "subtask": "Add route and middleware configurations", "description": "Configure routing and middleware for the API.", "prompt": "Configure the ASP.NET Core application to use attribute routing and add middleware for error handling in 'ToDoApp'." } ] }, { "step": "5", "description": "Implement Application Insights configuration for monitoring.", "subtasks": [ { "subtask": "Configure telemetry collection", "description": "Set up telemetry for performance monitoring.", "prompt": "Add code to configure Application Insights telemetry collection in the Startup.cs file of 'ToDoApp'." }, { "subtask": "Implement sampling", "description": "Implement data sampling in Application Insights.", "prompt": "Write the configuration code to enable sampling in Application Insights for the 'ToDoApp' project." } ] }, { "step": "6", "description": "Test the application thoroughly.", "subtasks": [ { "subtask": "Write unit tests for business logic", "description": "Implement unit tests for the ToDo item business logic.", "prompt": "Write C# unit tests for the methods in the 'ToDoRepository' class using xUnit." }, { "subtask": "Write integration tests for API endpoints", "description": "Create integration tests for the ToDo API endpoints.", "prompt": "Write C# integration tests for the endpoints in 'ToDoController' using the TestServer class from Microsoft.AspNetCore.Mvc.Testing." } ] }, { "step": "7", "description": "Deploy the application to Azure.", "subtasks": [ { "subtask": "Prepare Azure resources", "description": "Create Azure SQL Database and App Service for deployment.", "prompt": "Write the Azure CLI commands to create an Azure SQL Database and an App Service for hosting the 'ToDoApp'." }, { "subtask": "Deploy the application", "description": "Deploy the ToDo application to Azure App Service.", "prompt": "Write the script to publish the 'ToDoApp' to the Azure App Service using the dotnet CLI." } ] } ] }
I want to create a ToDo Application using C# language