Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
14e3222
Merge pull request #1 from taiphanvan2k3/feat/setup-project-with-clea…
taiphanvan2k3 Sep 18, 2025
5cd882a
Merge pull request #2 from taiphanvan2k3/chore/write-documents-and-re…
taiphanvan2k3 Sep 20, 2025
bae25df
Bump FluentValidation from 11.9.2 to 12.0.0
dependabot[bot] Sep 20, 2025
1d5ed73
Bump FluentValidation.AspNetCore from 11.3.0 to 11.3.1
dependabot[bot] Sep 20, 2025
1485c37
Merge pull request #5 from taiphanvan2k3/dependabot/nuget/src/Applica…
taiphanvan2k3 Sep 20, 2025
55cff40
Merge pull request #6 from taiphanvan2k3/dependabot/nuget/src/Web.Api…
taiphanvan2k3 Sep 20, 2025
26c3d93
feat: Configure Docker and test with simple endpoints (#8)
taiphanvan2k3 Sep 20, 2025
bdf06e1
chore: Update readme (#9)
taiphanvan2k3 Sep 20, 2025
1d1edda
Bump AspNetCore.HealthChecks.Redis from 8.0.1 to 9.0.0 (#3)
dependabot[bot] Sep 20, 2025
885ad8f
Bump AspNetCore.HealthChecks.SqlServer from 8.0.2 to 9.0.0 (#4)
dependabot[bot] Sep 20, 2025
f7c3942
chore: Init Schema (#18)
taiphanvan2k3 Oct 27, 2025
5dbaac4
Bump Microsoft.AspNetCore.Authentication.JwtBearer from 8.0.0 to 8.0.…
dependabot[bot] Oct 27, 2025
cd09f4e
Bump Microsoft.AspNetCore.OpenApi from 8.0.10 to 8.0.21 (#17)
dependabot[bot] Oct 27, 2025
957c556
Bump Microsoft.EntityFrameworkCore and Npgsql.EntityFrameworkCore.Pos…
dependabot[bot] Oct 27, 2025
fac23ef
Bump Microsoft.EntityFrameworkCore.Design and Microsoft.EntityFramewo…
dependabot[bot] Oct 27, 2025
a76fe4c
Bump Microsoft.AspNetCore.Authentication.JwtBearer from 8.0.20 to 8.0…
dependabot[bot] Oct 27, 2025
d125d83
feat: Implement Identity (#24)
taiphanvan2k3 Oct 27, 2025
25e5b68
feat: Setup email configure and complete register endpoint (#32)
taiphanvan2k3 Nov 3, 2025
27c4e83
chore: Update dependabot content (#33)
taiphanvan2k3 Nov 3, 2025
948e24f
Bump Microsoft.AspNetCore.Identity.EntityFrameworkCore from 8.0.11 to…
dependabot[bot] Nov 3, 2025
dc6ab4c
feat: Implement verify email (#35)
taiphanvan2k3 Nov 3, 2025
b863848
Bump Microsoft.EntityFrameworkCore.Design and Swashbuckle.AspNetCore …
dependabot[bot] Nov 11, 2025
1ccec05
Dependabot/nuget/src/application/minor and patch 5e1fe4b923 (#39)
taiphanvan2k3 Nov 11, 2025
4d49a7c
Bump Microsoft.Extensions.Caching.StackExchangeRedis and 3 others (#37)
dependabot[bot] Nov 11, 2025
c8350d8
feat: Implement Google Login API (#41)
taiphanvan2k3 Nov 14, 2025
9de8b85
feat: Add CI/CD scripts for Google Cloud deployment (#42)
taiphanvan2k3 Nov 14, 2025
81b95bd
feat: Update Google Cloud deployment configuration and add production…
taiphanvan2k3 Nov 14, 2025
a36378d
feat: Update deployment configuration and production settings for Clo…
taiphanvan2k3 Nov 14, 2025
eabc176
feat: Allow production environment to access Swagger UI for testing (…
taiphanvan2k3 Nov 14, 2025
115612c
feat: Implement transaction handling and add AvatarUrl to User entity…
taiphanvan2k3 Nov 14, 2025
78ef231
feat: Implement send message API (#47)
taiphanvan2k3 Nov 15, 2025
e537c9c
feat: Implement api for CRUD conversation (#48)
taiphanvan2k3 Nov 18, 2025
e962c33
refactor: Update ConversationController to use HttpPatch for title up…
taiphanvan2k3 Nov 21, 2025
a19533c
fix: Recreate the wrong migration when creating full text search
taiphanvan2k3 Nov 21, 2025
677ef8b
Merge pull request #50 from DUT-Team-21TCLC-DT3/fix/recreate-add-full…
taiphanvan2k3 Nov 21, 2025
85fcfed
feat: Implement refresh token functionality and enhance authenticatio…
taiphanvan2k3 Nov 21, 2025
2190a9e
feat: Enhance security in token management with SecurityException and…
taiphanvan2k3 Nov 21, 2025
f3ca946
Merge pull request #51 from DUT-Team-21TCLC-DT3/feat/handle-remember-…
taiphanvan2k3 Nov 21, 2025
1dd3a30
refactor: Remove unused behaviors and exceptions, streamline error ha…
taiphanvan2k3 Nov 22, 2025
b404005
feat: Implement custom authorization filter and enhance JWT authentic…
taiphanvan2k3 Nov 22, 2025
b20dd7f
Merge pull request #52 from DUT-Team-21TCLC-DT3/refactor/change-all-c…
taiphanvan2k3 Nov 22, 2025
09a6870
feat: Implement external login functionality and user profile management
taiphanvan2k3 Nov 22, 2025
f2897b5
Merge pull request #53 from DUT-Team-21TCLC-DT3/feat/implement-profil…
taiphanvan2k3 Nov 22, 2025
d8d67ef
feat: Implement message deletion and update functionality
taiphanvan2k3 Nov 23, 2025
8f45b7d
Merge pull request #54 from DUT-Team-21TCLC-DT3/feat/implement-rename…
taiphanvan2k3 Nov 23, 2025
285a855
feat: Implement AI content generation with SignalR integration
taiphanvan2k3 Nov 23, 2025
fa00d61
Merge pull request #55 from DUT-Team-21TCLC-DT3/feat/integrate-with-s…
taiphanvan2k3 Nov 23, 2025
6549e39
refactor: Simplify GetHistoriesRequest and enhance error handling
taiphanvan2k3 Nov 23, 2025
9f700b8
Merge pull request #56 from DUT-Team-21TCLC-DT3/fix/wrong-cache-key-a…
taiphanvan2k3 Nov 23, 2025
8c03b05
feat: Add SwaggerController for Postman collection generation
taiphanvan2k3 Nov 23, 2025
3de63b8
Merge pull request #57 from DUT-Team-21TCLC-DT3/feat/implement-add-en…
taiphanvan2k3 Nov 23, 2025
367e386
refactor: Enhance SwaggerController for improved Postman collection g…
taiphanvan2k3 Nov 24, 2025
9e54c78
Merge pull request #58 from DUT-Team-21TCLC-DT3/feat/implement-add-en…
taiphanvan2k3 Nov 24, 2025
366833a
feat: Implement AI thinking activity and thought tracking
taiphanvan2k3 Nov 24, 2025
252b725
Merge pull request #59 from DUT-Team-21TCLC-DT3/feat/implement-saving…
taiphanvan2k3 Nov 24, 2025
f60be36
feat: Implement WebSocket support for AI content generation
taiphanvan2k3 Nov 27, 2025
ddca6bf
fix: Update error handling in WebSocketChatController and RawWebSocke…
taiphanvan2k3 Nov 27, 2025
2e84750
refactor: Improve WebSocketChatController error handling and resource…
taiphanvan2k3 Nov 27, 2025
9a3cc6c
Merge pull request #60 from DUT-Team-21TCLC-DT3/feat/implement-websoc…
taiphanvan2k3 Nov 27, 2025
3721316
feat: Integrate with AI service and configuration updates
taiphanvan2k3 Nov 29, 2025
1711b63
Merge pull request #61 from DUT-Team-21TCLC-DT3/feat/integrate-with-a…
taiphanvan2k3 Nov 29, 2025
7aed923
refactor: Remove unused namespaces
taiphanvan2k3 Nov 30, 2025
eaf9c4b
feat: Implement PDF export functionality for conversations
taiphanvan2k3 Nov 30, 2025
3c0c872
Merge pull request #62 from DUT-Team-21TCLC-DT3/feat/implement-export…
taiphanvan2k3 Nov 30, 2025
1b77768
fix: Enhance PDF service configuration for Linux environment
taiphanvan2k3 Nov 30, 2025
a9d1166
Merge pull request #63 from DUT-Team-21TCLC-DT3/fix/cannot-export-pdf…
taiphanvan2k3 Nov 30, 2025
034dff5
fix: Change verififcation url from localhost to remote
taiphanvan2k3 Dec 1, 2025
29c658e
feat: Configure to upload file to Google Storage Bucket
taiphanvan2k3 Dec 1, 2025
e1a1ece
Merge pull request #64 from DUT-Team-21TCLC-DT3/fix/change-verify-ema…
taiphanvan2k3 Dec 1, 2025
c6044a7
fix: Enable IronPdf support for Linux by adding the necessary package…
taiphanvan2k3 Dec 1, 2025
33b9b61
Merge pull request #65 from DUT-Team-21TCLC-DT3/fix/missing-iron-pdf-…
taiphanvan2k3 Dec 1, 2025
700c6dd
feat: Implement OpenTelemetry tracing and update Google Cloud credent…
taiphanvan2k3 Dec 1, 2025
f58e90a
Merge pull request #66 from DUT-Team-21TCLC-DT3/feat/setup-open-telem…
taiphanvan2k3 Dec 1, 2025
06cbcdc
fix: Update OpenTelemetry configuration for Google Cloud tracing
taiphanvan2k3 Dec 1, 2025
31745c0
Merge pull request #67 from DUT-Team-21TCLC-DT3/feat/setup-open-telem…
taiphanvan2k3 Dec 1, 2025
6e392f0
feat: Enhance OpenTelemetry tracing configuration for Google Cloud
taiphanvan2k3 Dec 2, 2025
f26074a
Merge pull request #68 from DUT-Team-21TCLC-DT3/feat/setup-open-telem…
taiphanvan2k3 Dec 2, 2025
7f39670
feat: Enhance Entity Framework Core logging and OpenTelemetry configu…
taiphanvan2k3 Dec 2, 2025
2cb5a6c
Merge pull request #69 from DUT-Team-21TCLC-DT3/fix/missing-ef-trace-…
taiphanvan2k3 Dec 2, 2025
8f589d4
fix: Missing trace from EF
taiphanvan2k3 Dec 2, 2025
9675211
Merge pull request #70 from DUT-Team-21TCLC-DT3/fix/missing-ef-trace-…
taiphanvan2k3 Dec 2, 2025
7239e12
feat: Configure to use Aspire Dashboard
taiphanvan2k3 Dec 2, 2025
71bf097
Merge pull request #71 from DUT-Team-21TCLC-DT3/feat/configure-to-use…
taiphanvan2k3 Dec 2, 2025
0a4b906
feat: Implement conversation statistics query and conversations list
taiphanvan2k3 Dec 2, 2025
4d2e2a0
Merge pull request #72 from DUT-Team-21TCLC-DT3/feat/enhance-response…
taiphanvan2k3 Dec 2, 2025
3aca7ba
refactor: Cannot verify email
taiphanvan2k3 Dec 2, 2025
e1b9192
Merge pull request #73 from DUT-Team-21TCLC-DT3/fix/cannot-verify-email
taiphanvan2k3 Dec 2, 2025
6203537
fix: Error sql when searching list of histories
taiphanvan2k3 Dec 2, 2025
ad73391
Merge pull request #74 from DUT-Team-21TCLC-DT3/fix/error-sql-when-se…
taiphanvan2k3 Dec 2, 2025
fab8def
feat(deploy): Optimize docker build time
taiphanvan2k3 Dec 2, 2025
5563199
Merge pull request #75 from DUT-Team-21TCLC-DT3/feat/optimize-build-time
taiphanvan2k3 Dec 2, 2025
8fb88b3
feat: Add comprehensive unit tests for application features
taiphanvan2k3 Dec 3, 2025
57b882f
feat: Add unit tests for authentication and user profile features
taiphanvan2k3 Dec 3, 2025
e451a90
Merge pull request #76 from DUT-Team-21TCLC-DT3/feat/apply-unit-test
taiphanvan2k3 Dec 3, 2025
e6dff14
Add retention days for uploaded artifacts
taiphanvan2k3 Dec 3, 2025
dfcbc8a
Set retention days for published app artifacts
taiphanvan2k3 Dec 3, 2025
b150e23
Comment out build artifacts upload step
taiphanvan2k3 Dec 3, 2025
c61b7c9
chore: Update CORS policy to include new origin
taiphanvan2k3 Dec 4, 2025
0e34c0e
Merge pull request #77 from DUT-Team-21TCLC-DT3/chore/update-cors-for…
taiphanvan2k3 Dec 4, 2025
80a6d17
feat: Implement message reporting feature
taiphanvan2k3 Dec 5, 2025
3ccfa9e
Merge pull request #78 from DUT-Team-21TCLC-DT3/feat/implement-messag…
taiphanvan2k3 Dec 5, 2025
4a938e4
Merge branch 'main' into main
taiphanvan2k3 Dec 17, 2025
816baa6
Merge pull request #81 from taiphanvan2k3/main
taiphanvan2k3 Dec 17, 2025
f2ceb1a
Bump the minor-and-patch group with 24 updates
dependabot[bot] Dec 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .cursorrules
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,6 @@
- Make types internal and sealed by default unless otherwise specified
- Prefer Guid for identifiers unless otherwise specified
- Use `is null` checks instead of `== null`. The same goes for `is not null` and `!= null`.
- Use `DateTimeOffset` for all date and time operations.
- Use `TimeSpan` for all time duration operations.
- Don't use the magic values. Use the constants instead. Place the constants in the `Domain.Constants` namespace.
18 changes: 15 additions & 3 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,20 @@ csharp_style_expression_bodied_lambdas = true:error
csharp_style_expression_bodied_local_functions = true:error

# S1186: Methods should not be empty
dotnet_diagnostic.S1186.severity = warning
dotnet_diagnostic.S1186.severity = suggestion

# CA1303: Do not pass literals as localized parameters
dotnet_diagnostic.CA1303.severity = none

# IDE0161: Convert to file-scoped namespace
dotnet_diagnostic.IDE0161.severity = none

# CA1861: Avoid constant arrays as arguments
dotnet_diagnostic.CA1861.severity = suggestion

# IDE0053: Use expression body for lambda expression
dotnet_diagnostic.IDE0053.severity = suggestion

[*.{cs,vb}]
dotnet_style_prefer_simplified_boolean_expressions = true:suggestion
dotnet_style_prefer_simplified_interpolation = true:suggestion
Expand All @@ -89,7 +98,7 @@ dotnet_code_quality_unused_parameters = all:none
#### C# Coding Conventions ####

# Namespace preferences
csharp_style_namespace_declarations= file_scoped:error
csharp_style_namespace_declarations = file_scoped:none

# var preferences
csharp_style_var_elsewhere = false:warning
Expand All @@ -100,7 +109,7 @@ csharp_style_var_when_type_is_apparent = true:warning
csharp_style_expression_bodied_accessors = true:error
csharp_style_expression_bodied_constructors = false:silent
csharp_style_expression_bodied_indexers = true:error
csharp_style_expression_bodied_lambdas = true:error
csharp_style_expression_bodied_lambdas = true:suggestion
csharp_style_expression_bodied_local_functions = true:error
csharp_style_expression_bodied_methods = false:silent
csharp_style_expression_bodied_operators = true:error
Expand Down Expand Up @@ -417,3 +426,6 @@ dotnet_diagnostic.S6605.severity = none

# S6781: JWT secret keys should not be disclosed
dotnet_diagnostic.S6781.severity = none

# Default severity for analyzer diagnostics with category 'Critical Code Smell'
dotnet_analyzer_diagnostic.category-Critical Code Smell.severity = suggestion
18 changes: 17 additions & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,20 @@ updates:
- package-ecosystem: "nuget"
directory: "/"
schedule:
interval: "daily"
interval: "weekly"
day: "monday"

# Bỏ qua tất cả major version updates (breaking changes)
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]

# Gộp các updates nhỏ lại thành 1 PR
groups:
minor-and-patch:
update-types:
- "minor"
- "patch"

# Giới hạn số PR mở cùng lúc
open-pull-requests-limit: 5
1 change: 1 addition & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,3 +64,4 @@ jobs:
with:
name: published-app
path: ./publish
retention-days: 2
163 changes: 163 additions & 0 deletions .github/workflows/deploy-gcloud.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
name: Deploy to Google Cloud Artifact Registry

on:
push:
branches:
- main
- develop
paths:
- 'src/**'
- 'appsettings*.json'
- 'Dockerfile'
- 'docker-compose.yml'
- '.github/workflows/deploy-gcloud.yml'
pull_request:
branches:
- main
paths:
- 'src/**'
- 'appsettings*.json'
- 'Dockerfile'
- 'docker-compose.yml'
workflow_dispatch:
inputs:
version_tag:
description: 'Custom version tag (optional, will use SHA if empty)'
required: false
type: string

env:
PROJECT_ID: lucky-union-472503-c7
REGION: asia-southeast1
REPOSITORY: backendnetcore
IMAGE_NAME: webapi
SERVICE_NAME: legal-assistant-api
PORT: 10000
TIMEOUT: 600
SERVICE_ACCOUNT: be-storage-uploader@lucky-union-472503-c7.iam.gserviceaccount.com

jobs:
build-and-deploy:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write

steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Generate version tag
id: version
run: |
if [ "${{ github.event_name }}" == "workflow_dispatch" ] && [ -n "${{ inputs.version_tag }}" ]; then
VERSION="${{ inputs.version_tag }}"
elif [ "${{ github.ref_type }}" == "tag" ]; then
VERSION="${{ github.ref_name }}"
else
# Use date + short SHA for immutable versioning
VERSION="$(date +%Y%m%d)-${GITHUB_SHA::7}"
fi
echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT
echo "Generated version: ${VERSION}"

- name: Authenticate to Google Cloud
uses: google-github-actions/auth@v2
with:
credentials_json: ${{ secrets.GCP_SA_KEY }}

- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@v2

- name: Configure Docker for Artifact Registry
run: |
gcloud auth configure-docker ${{ env.REGION }}-docker.pkg.dev --quiet

- name: Build Docker image
run: |
docker build -t ${{ env.IMAGE_NAME }}:latest -f src/Web.Api/Dockerfile .

- name: Tag Docker image
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
run: |
REMOTE_IMAGE="${{ env.REGION }}-docker.pkg.dev/${{ env.PROJECT_ID }}/${{ env.REPOSITORY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }}"
REMOTE_IMAGE_LATEST="${{ env.REGION }}-docker.pkg.dev/${{ env.PROJECT_ID }}/${{ env.REPOSITORY }}/${{ env.IMAGE_NAME }}:latest"

docker tag ${{ env.IMAGE_NAME }}:latest ${REMOTE_IMAGE}
docker tag ${{ env.IMAGE_NAME }}:latest ${REMOTE_IMAGE_LATEST}

echo "REMOTE_IMAGE=${REMOTE_IMAGE}" >> $GITHUB_ENV
echo "REMOTE_IMAGE_LATEST=${REMOTE_IMAGE_LATEST}" >> $GITHUB_ENV

- name: Push Docker image to Artifact Registry
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
run: |
docker push ${{ env.REMOTE_IMAGE }}
docker push ${{ env.REMOTE_IMAGE_LATEST }}

- name: Deploy to Cloud Run (Production)
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
run: |
gcloud run deploy ${{ env.SERVICE_NAME }} \
--image ${{ env.REMOTE_IMAGE }} \
--platform managed \
--region ${{ env.REGION }} \
--allow-unauthenticated \
--memory 4Gi \
--cpu 2 \
--max-instances 10 \
--min-instances 0 \
--timeout ${{ env.TIMEOUT }} \
--service-account ${{ env.SERVICE_ACCOUNT }} \
--set-env-vars "ASPNETCORE_ENVIRONMENT=Production,ASPNETCORE_URLS=http://+:10000" \
--quiet

- name: Deploy to Cloud Run (Staging)
if: github.ref == 'refs/heads/develop' && github.event_name == 'push'
run: |
gcloud run deploy ${{ env.SERVICE_NAME }}-staging \
--image ${{ env.REMOTE_IMAGE }} \
--platform managed \
--region ${{ env.REGION }} \
--allow-unauthenticated \
--memory 4Gi \
--cpu 2 \
--max-instances 5 \
--min-instances 0 \
--timeout ${{ env.TIMEOUT }} \
--service-account ${{ env.SERVICE_ACCOUNT }} \
--set-env-vars "ASPNETCORE_ENVIRONMENT=Staging,ASPNETCORE_URLS=http://+:10000" \
--quiet

- name: Output deployment info
run: |
echo "=== Deployment Complete ==="
echo "Version: ${{ steps.version.outputs.VERSION }}"
echo "Image: ${{ env.REMOTE_IMAGE }}"
echo ""
if [ "${{ github.ref }}" == "refs/heads/main" ]; then
SERVICE_URL=$(gcloud run services describe ${{ env.SERVICE_NAME }} --region ${{ env.REGION }} --format 'value(status.url)')
echo "Production URL: ${SERVICE_URL}"
elif [ "${{ github.ref }}" == "refs/heads/develop" ]; then
SERVICE_URL=$(gcloud run services describe ${{ env.SERVICE_NAME }}-staging --region ${{ env.REGION }} --format 'value(status.url)')
echo "Staging URL: ${SERVICE_URL}"
fi

- name: Create deployment summary
run: |
echo "## Deployment Summary 🚀" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "- **Version**: \`${{ steps.version.outputs.VERSION }}\`" >> $GITHUB_STEP_SUMMARY
echo "- **Image**: \`${{ env.REMOTE_IMAGE }}\`" >> $GITHUB_STEP_SUMMARY
echo "- **Branch**: \`${{ github.ref_name }}\`" >> $GITHUB_STEP_SUMMARY
echo "- **Commit**: \`${GITHUB_SHA::7}\`" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
if [ "${{ github.ref }}" == "refs/heads/main" ]; then
echo "- **Environment**: Production" >> $GITHUB_STEP_SUMMARY
elif [ "${{ github.ref }}" == "refs/heads/develop" ]; then
echo "- **Environment**: Staging" >> $GITHUB_STEP_SUMMARY
else
echo "- **Environment**: Image built only (no deployment)" >> $GITHUB_STEP_SUMMARY
fi
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -398,3 +398,7 @@ FodyWeavers.xsd
*.sln.iml

.containers/

.vscode/settings.json
ci-cd-github-key.json
be-service-account.json
53 changes: 53 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (web)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/src/Web.Api/bin/Debug/net8.0/Web.Api.dll",
"args": [],
"cwd": "${workspaceFolder}/src/Web.Api",
"stopAtEntry": false,
"serverReadyAction": {
"action": "openExternally",
"pattern": "\\bNow listening on:\\s+(https?://\\S+)",
"uriFormat": "%s/swagger"
},
"env": {
"ASPNETCORE_ENVIRONMENT": "Development",
"ASPNETCORE_URLS": "http://localhost:10000"
},
"sourceFileMap": {
"/Views": "${workspaceFolder}/Views"
}
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach"
},
{
"name": "netcoredbg",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceFolder}/src/Web.Api/bin/Debug/net8.0/Web.Api.dll",
"args": [],
"cwd": "${workspaceFolder}/src/Web.Api",
"pipeTransport": {
"pipeCwd": "${workspaceFolder}",
"pipeProgram": "powershell.exe",
"pipeArgs": ["-c"],
"debuggerPath": "D:\\PackageCache\\netcoredbg\\netcoredbg.exe",
"debuggerArgs": ["--interpreter=vscode"],
"quoteArgs": true
},
"env": {
"ASPNETCORE_ENVIRONMENT": "Development",
"ASPNETCORE_URLS": "http://localhost:10000"
}
}
]
}
81 changes: 81 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/src/Web.Api/Web.Api.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile",
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "publish",
"command": "dotnet",
"type": "process",
"args": [
"publish",
"${workspaceFolder}/src/Web.Api/Web.Api.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile"
},
{
"label": "watch",
"command": "dotnet",
"type": "process",
"args": [
"watch",
"run",
"--project",
"${workspaceFolder}/src/Web.Api/Web.Api.csproj"
],
"problemMatcher": "$msCompile",
"isBackground": true
},
{
"label": "clean",
"command": "dotnet",
"type": "process",
"args": [
"clean",
"${workspaceFolder}/src/Web.Api/Web.Api.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile"
},
{
"label": "restore",
"command": "dotnet",
"type": "process",
"args": [
"restore",
"${workspaceFolder}/LegalAssistant.AppService.sln"
],
"problemMatcher": "$msCompile"
},
{
"label": "build-solution",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/LegalAssistant.AppService.sln",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary;ForceNoAlign"
],
"problemMatcher": "$msCompile",
"group": "build"
}
]
}
Loading
Loading