More Related Content Similar to 從頭打造 C#、.NET 與 ASP.NET Core 開發環境 (20) More from Will Huang (20) 從頭打造 C#、.NET 與 ASP.NET Core 開發環境2. 認識 .NET 開發平台與 C# 程式語言
• .NET 是個免費、跨平台、開源的開發平台並可建立各種類型的應用程式
- 認識 .NET 的入口網站 ▶ https://dot.net/
- 學習 .NET 的入口網站 ▶ https://dot.net/learn
• 掌握 .NET 之前必須學習 C# 程式語言
- 學習如何開發 C# 程式語言 ▶ https://dot.net/learntocode
- 透過影片學習 C# 程式語言 ▶ https://dot.net/videos
• C# 101
• C# 201
• .NET Core 101
2
4. 基本開發環境
• 安裝 .NET SDK
- https://dot.net/download
• 安裝 VS Code 編輯器
- https://code.visualstudio.com
• 安裝 VS Code 擴充套件
- .NET Core Extension Pack
- .NET Interactive Notebooks
- Git Extension Pack
- SQL Server (mssql)
4
5. 資料庫開發環境
• 安裝 Docker Desktop 容器工具
• 安裝 Microsoft SQL Server 資料庫伺服器 (Docker)
• 安裝 sqlcmd 與 sqlpackage 工具程式 (命令列工具)
• 安裝 Azure Data Studio 資料庫管理工具
- 安裝 Admin Pack for SQL Server 擴充套件
5
docker pull mcr.microsoft.com/mssql/server:2019-latest
docker run --name sql1 -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Ver7CompleXPW"
-p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest
$env:SQLCMDPASSWORD='Ver7CompleXPW'
sqlcmd -S localhost -U sa -Q "SELECT @@VERSION"
6. Admin Pack for SQL Server 擴充套件
• SQL Server Agent
- List SQL Server Agent Jobs configured on a SQL Server
- View Job History with job execution results
- Basic Job Control to start and stop jobs
• SQL Server Profiler
- Browse through extended events and view associated T-SQL
- View and manage sessions
- Filter search of events
• SQL Server Import
- Use the Import Flat File Wizard to import .csv and .txt files to a SQL table using AI-based
framework to simplify experience
• SQL Server dacpac
- Use the Data-Tier Application Wizard to deploy and extract .dacpac files and import and
export .bacpac files
6
7. Visual Studio Code 使用者設定
{
"workbench.sideBar.location": "right",
"editor.minimap.enabled": true,
"editor.minimap.renderCharacters": false,
"csharp.referencesCodeLens.enabled": false,
"csharp.testsCodeLens.enabled": false,
"omnisharp.enableRoslynAnalyzers": true,
"files.associations": {
"*.csproj": "msbuild"
}
} 7
9. 開發 Console 應用程式
• 專案範本
- dotnet new -l
• 建立新專案
- dotnet new console -n c1
• 使用 VS Code 開啟專案
- code c1
• 啟動應用程式 (F5)
- dotnet run
• 建立 Git 版控
- dotnet new gitignore
- git init && git add . && git commit -m "Initial commit"
9
10. 開發 ASP.NET Core Web 應用程式
• 建立新專案 (預設採用 Minimal APIs 架構)
- dotnet new web -n web1
• 使用 VS Code 開啟專案
- code -r web1
• 設定中斷點 (F9) 與單步執行 (F10)
• 認識 Minimal APIs
• 新增一個新的 API
• 加入 Swagger UI
- builder.Services.AddEndpointsApiExplorer();
- builder.Services.AddSwaggerGen();
10
11. 開發 ASP.NET Core MVC 應用程式
• 建立新專案
- dotnet new mvc --help
- dotnet new mvc -n mvc1
• 使用 VS Code 開啟專案
- code -r mvc1
11
• 建立 Controller
- New C# > Controller
• 建立 Action
- mvc-action (Code Snippet)
• 建立 View
- Alt-P
- Alt-O
12. 常用 NuGet 套件名稱
• Microsoft.AspNetCore.*
- Microsoft.AspNetCore.Hosting.*
- Microsoft.AspNetCore.Server.*
- Microsoft.AspNetCore.Http.*
- Microsoft.AspNetCore.Http.Polly
- Microsoft.AspNetCore.Http.Extensions
- Microsoft.AspNetCore.Mvc.*
- Microsoft.AspNetCore.Mvc.NewtonsoftJson
- Microsoft.AspNetCore.Mvc.Localization
- Microsoft.AspNetCore.Razor.*
- Microsoft.AspNetCore.Identity.*
- Microsoft.AspNetCore.SignalR.*
- Microsoft.AspNetCore.Authentication.*
- Microsoft.AspNetCore.DataProtection.*
- Microsoft.AspNetCore.Diagnostics
- Microsoft.AspNetCore.Diagnostics.HealthChecks
12
• Microsoft.Extensions.*
- Microsoft.Extensions.Options
- Microsoft.Extensions.Logging
- Microsoft.Extensions.Configuration.*
- Microsoft.Extensions.DependencyInjection
- Microsoft.Extensions.Caching.*
- Microsoft.Extensions.Identity.*
- Microsoft.Extensions.Localization.*
- Microsoft.Extensions.Diagnostics.*
- Microsoft.Extensions.Http
• Microsoft.EntityFrameworkCore.*
- Microsoft.EntityFrameworkCore.Tools
- Microsoft.EntityFrameworkCore.SqlServer
- Microsoft.EntityFrameworkCore.DynamicLinq
- Microsoft.EntityFrameworkCore.Proxies
- Microsoft.EntityFrameworkCore.*
13. The Will Will Web
網路世界的學習心得與技術分享
http://blog.miniasp.com/
Facebook
Will 保哥的技術交流中心
http://www.facebook.com/will.fans
Twitter
https://twitter.com/Will_Huang
13
聯絡資訊
Editor's Notes docker pull mcr.microsoft.com/mssql/server:2019-latest
docker run --name sql1 -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Ver7CompleXPW" -d mcr.microsoft.com/mssql/server:2019-latest -p 1433:1433 choco install docker-desktop sqlserver-cmdlineutils sqlpackage choco install azure-data-studio-sql-server-admin-pack -y
docker pull mcr.microsoft.com/mssql/server:2019-latest
docker run --name sql1 -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Ver7CompleXPW" -d mcr.microsoft.com/mssql/server:2019-latest -p 1433:1433
choco install sqlserver-cmdlineutils
choco install azure-data-studio
choco install azure-data-studio-sql-server-admin-pack 在 ASP.NET Core 專案中改用 JSON.NET 做資料繫結
https://blog.poychang.net/using-newtonsoft-json-in-asp-net-core-projects/
https://docs.microsoft.com/zh-tw/dotnet/api/microsoft.aspnetcore.mvc.newtonsoftjson
ASP.NET Core 全球化和當地語系化
https://docs.microsoft.com/zh-tw/aspnet/core/fundamentals/localization