├── src └── Web │ ├── Pages │ ├── _ViewStart.cshtml │ ├── _ViewImports.cshtml │ ├── Privacy.cshtml │ ├── Shared │ │ ├── _ValidationScriptsPartial.cshtml │ │ ├── _LoginPartial.cshtml │ │ ├── _Layout.cshtml.css │ │ └── _Layout.cshtml │ ├── Index.cshtml │ ├── Index.cshtml.cs │ ├── Privacy.cshtml.cs │ ├── Error.cshtml.cs │ └── Error.cshtml │ ├── app.db │ ├── Areas │ └── Identity │ │ └── Pages │ │ └── _ViewStart.cshtml │ ├── wwwroot │ ├── favicon.ico │ ├── js │ │ └── site.js │ ├── css │ │ └── site.css │ └── lib │ │ ├── jquery │ │ └── LICENSE.txt │ │ ├── jquery-validation │ │ └── LICENSE.md │ │ ├── bootstrap │ │ ├── LICENSE │ │ └── dist │ │ │ └── css │ │ │ ├── bootstrap-reboot.min.css │ │ │ ├── bootstrap-reboot.rtl.min.css │ │ │ ├── bootstrap-reboot.rtl.css │ │ │ └── bootstrap-reboot.css │ │ └── jquery-validation-unobtrusive │ │ ├── LICENSE.txt │ │ ├── jquery.validate.unobtrusive.min.js │ │ └── jquery.validate.unobtrusive.js │ ├── appsettings.Development.json │ ├── appsettings.json │ ├── Data │ ├── ApplicationDbContext.cs │ └── Migrations │ │ ├── 00000000000000_CreateIdentitySchema.cs │ │ ├── ApplicationDbContextModelSnapshot.cs │ │ └── 00000000000000_CreateIdentitySchema.Designer.cs │ ├── Web.csproj │ ├── Properties │ └── launchSettings.json │ └── Program.cs ├── global.json ├── assets ├── architecture-diagram.png └── architecture-diagram.vsdx ├── azure.yaml ├── infra ├── main.parameters.json ├── core │ ├── testing │ │ └── loadtesting.bicep │ ├── host │ │ ├── staticwebapp.bicep │ │ ├── appserviceplan.bicep │ │ ├── appservice-appsettings.bicep │ │ ├── aks-agent-pool.bicep │ │ ├── container-apps.bicep │ │ ├── container-apps-environment.bicep │ │ ├── container-registry.bicep │ │ ├── functions.bicep │ │ ├── container-app-upsert.bicep │ │ ├── appservice.bicep │ │ ├── aks-managed-cluster.bicep │ │ ├── container-app.bicep │ │ └── aks.bicep │ ├── monitor │ │ ├── loganalytics.bicep │ │ ├── applicationinsights.bicep │ │ └── monitoring.bicep │ ├── database │ │ ├── cosmos │ │ │ ├── sql │ │ │ │ ├── cosmos-sql-role-assign.bicep │ │ │ │ ├── cosmos-sql-account.bicep │ │ │ │ ├── cosmos-sql-role-def.bicep │ │ │ │ └── cosmos-sql-db.bicep │ │ │ ├── mongo │ │ │ │ ├── cosmos-mongo-account.bicep │ │ │ │ └── cosmos-mongo-db.bicep │ │ │ └── cosmos-account.bicep │ │ ├── postgresql │ │ │ └── flexibleserver.bicep │ │ └── sqlserver │ │ │ └── sqlserver.bicep │ ├── security │ │ ├── keyvault-access.bicep │ │ ├── role.bicep │ │ ├── keyvault.bicep │ │ ├── registry-access.bicep │ │ └── keyvault-secret.bicep │ ├── networking │ │ ├── cdn-profile.bicep │ │ ├── cdn.bicep │ │ └── cdn-endpoint.bicep │ ├── ai │ │ └── cognitiveservices.bicep │ ├── search │ │ └── search-services.bicep │ ├── storage │ │ └── storage-account.bicep │ └── gateway │ │ └── apim.bicep ├── app.bicep ├── main.bicep └── abbreviations.json ├── .devcontainer └── devcontainer.json ├── .azdo └── pipelines │ └── azure-dev.yml ├── .github └── workflows │ └── azure-dev.yml ├── README.md ├── .gitignore └── OPTIONAL_FEATURES.md /src/Web/Pages/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "_Layout"; 3 | } 4 | -------------------------------------------------------------------------------- /src/Web/app.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasontaylordev/todo-aspnetcore-csharp-sqlite/HEAD/src/Web/app.db -------------------------------------------------------------------------------- /src/Web/Areas/Identity/Pages/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "/Pages/Shared/_Layout.cshtml"; 3 | } 4 | -------------------------------------------------------------------------------- /global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "8.0.100-rc.2.23502.2", 4 | "rollForward": "latestMinor" 5 | } 6 | } -------------------------------------------------------------------------------- /src/Web/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasontaylordev/todo-aspnetcore-csharp-sqlite/HEAD/src/Web/wwwroot/favicon.ico -------------------------------------------------------------------------------- /assets/architecture-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasontaylordev/todo-aspnetcore-csharp-sqlite/HEAD/assets/architecture-diagram.png -------------------------------------------------------------------------------- /assets/architecture-diagram.vsdx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasontaylordev/todo-aspnetcore-csharp-sqlite/HEAD/assets/architecture-diagram.vsdx -------------------------------------------------------------------------------- /src/Web/Pages/_ViewImports.cshtml: -------------------------------------------------------------------------------- 1 | @using Microsoft.AspNetCore.Identity 2 | @using Web 3 | @using Web.Data 4 | @namespace Web.Pages 5 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 6 | -------------------------------------------------------------------------------- /src/Web/Pages/Privacy.cshtml: -------------------------------------------------------------------------------- 1 | @page 2 | @model PrivacyModel 3 | @{ 4 | ViewData["Title"] = "Privacy Policy"; 5 | } 6 |
Use this page to detail your site's privacy policy.
9 | -------------------------------------------------------------------------------- /src/Web/Pages/Shared/_ValidationScriptsPartial.cshtml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /src/Web/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "DetailedErrors": true, 3 | "Logging": { 4 | "LogLevel": { 5 | "Default": "Information", 6 | "Microsoft.AspNetCore": "Warning" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/Web/wwwroot/js/site.js: -------------------------------------------------------------------------------- 1 | // Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification 2 | // for details on configuring this project to bundle and minify static web assets. 3 | 4 | // Write your JavaScript code. 5 | -------------------------------------------------------------------------------- /src/Web/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "ConnectionStrings": { 3 | "DefaultConnection": "DataSource=app.db;Cache=Shared" 4 | }, 5 | "Logging": { 6 | "LogLevel": { 7 | "Default": "Information", 8 | "Microsoft.AspNetCore": "Warning" 9 | } 10 | }, 11 | "AllowedHosts": "*" 12 | } 13 | -------------------------------------------------------------------------------- /src/Web/Pages/Index.cshtml: -------------------------------------------------------------------------------- 1 | @page 2 | @model IndexModel 3 | @{ 4 | ViewData["Title"] = "Home page"; 5 | } 6 | 7 |Learn about building Web apps with ASP.NET Core.
10 |
13 | Request ID: @Model.RequestId
14 |
19 | Swapping to the Development environment displays detailed information about the error that occurred. 20 |
21 |22 | The Development environment shouldn't be enabled for deployed applications. 23 | It can result in displaying sensitive information from exceptions to end users. 24 | For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development 25 | and restarting the app. 26 |
27 | -------------------------------------------------------------------------------- /infra/core/database/cosmos/sql/cosmos-sql-role-def.bicep: -------------------------------------------------------------------------------- 1 | metadata description = 'Creates a SQL role definition under an Azure Cosmos DB account.' 2 | param accountName string 3 | 4 | resource roleDefinition 'Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions@2022-08-15' = { 5 | parent: cosmos 6 | name: guid(cosmos.id, accountName, 'sql-role') 7 | properties: { 8 | assignableScopes: [ 9 | cosmos.id 10 | ] 11 | permissions: [ 12 | { 13 | dataActions: [ 14 | 'Microsoft.DocumentDB/databaseAccounts/readMetadata' 15 | 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/*' 16 | 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/*' 17 | ] 18 | notDataActions: [] 19 | } 20 | ] 21 | roleName: 'Reader Writer' 22 | type: 'CustomRole' 23 | } 24 | } 25 | 26 | resource cosmos 'Microsoft.DocumentDB/databaseAccounts@2022-08-15' existing = { 27 | name: accountName 28 | } 29 | 30 | output id string = roleDefinition.id 31 | -------------------------------------------------------------------------------- /src/Web/Pages/Shared/_LoginPartial.cshtml: -------------------------------------------------------------------------------- 1 | @using Microsoft.AspNetCore.Identity 2 | @inject SignInManager