dotnet core 项目脚手架这种小事嘛...
dotnet core脚手架批处理.bat
@echo 请修改批处理文件名后,如:Example.Core ,注释掉goto end,再执行脚本
pause
goto end
::goto end set name=%~n0 mkdir %name%.Model
cd %name%.Model
dotnet new classlib --framework netcoreapp3.
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Dapper
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.Relational
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet add package Microsoft.EntityFrameworkCore.Tools
cd .. mkdir %name%.General
cd %name%.General
dotnet new classlib --framework netcoreapp3.
dotnet add package log4net
dotnet add package Newtonsoft.Json
cd .. mkdir %name%.DAL
cd %name%.DAL
dotnet new classlib --framework netcoreapp3.
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Dapper
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
cd ..
dotnet add %name%.DAL/%name%.DAL.csproj reference %name%.Model/%name%.Model.csproj mkdir %name%.BLL
cd %name%.BLL
dotnet new classlib --framework netcoreapp3.
dotnet add package log4net
dotnet add package Newtonsoft.Json
cd ..
dotnet add %name%.BLL/%name%.BLL.csproj reference %name%.Model/%name%.Model.csproj
dotnet add %name%.BLL/%name%.BLL.csproj reference %name%.General/%name%.General.csproj
dotnet add %name%.BLL/%name%.BLL.csproj reference %name%.DAL/%name%.DAL.csproj mkdir %name%.Api
cd %name%.Api
dotnet new webapi
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Autofac
dotnet add package Autofac.Extensions.DependencyInjection
dotnet add package AutoMapper
dotnet add package Dapper
dotnet add package Microsoft.Extensions.Options
dotnet add package Microsoft.Extensions.Caching.Abstractions
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.Relational
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet add package Microsoft.EntityFrameworkCore.Tools
cd ..
dotnet add %name%.Api/%name%.Api.csproj reference %name%.Model/%name%.Model.csproj
dotnet add %name%.Api/%name%.Api.csproj reference %name%.General/%name%.General.csproj
dotnet add %name%.Api/%name%.Api.csproj reference %name%.BLL/%name%.BLL.csproj goto :next mkdir %name%.Web
cd %name%.Web
dotnet new mvc
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Autofac
dotnet add package Autofac.Extensions.DependencyInjection
dotnet add package AutoMapper
dotnet add package Dapper
dotnet add package Microsoft.Extensions.Options
dotnet add package Microsoft.Extensions.Caching.Abstractions
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.Relational
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet add package Microsoft.EntityFrameworkCore.Tools
cd ..
dotnet add %name%.Web/%name%.Web.csproj reference %name%.Model/%name%.Model.csproj
dotnet add %name%.Web/%name%.Web.csproj reference %name%.General/%name%.General.csproj
dotnet add %name%.Web/%name%.Web.csproj reference %name%.BLL/%name%.BLL.csproj :next mkdir %name%.Test
cd %name%.Test
dotnet new console
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Dapper
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
cd ..
dotnet add %name%.Test/%name%.Test.csproj reference %name%.Model/%name%.Model.csproj
dotnet add %name%.Test/%name%.Test.csproj reference %name%.General/%name%.General.csproj
dotnet add %name%.Test/%name%.Test.csproj reference %name%.BLL/%name%.BLL.csproj
dotnet add %name%.Test/%name%.Test.csproj reference %name%.DAL/%name%.DAL.csproj mkdir %name%.Tools
cd %name%.Tools
dotnet new winforms
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Dapper
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
cd ..
dotnet add %name%.Tools/%name%.Tools.csproj reference %name%.Model/%name%.Model.csproj
dotnet add %name%.Tools/%name%.Tools.csproj reference %name%.General/%name%.General.csproj
dotnet add %name%.Tools/%name%.Tools.csproj reference %name%.BLL/%name%.BLL.csproj
dotnet add %name%.Tools/%name%.Tools.csproj reference %name%.DAL/%name%.DAL.csproj mkdir %name%.Service
cd %name%.Service
dotnet new grpc
dotnet add package log4net
dotnet add package Newtonsoft.Json
dotnet add package Dapper
dotnet add package Oracle.EntityFrameworkCore
dotnet add package Oracle.ManagedDataAccess.Core
dotnet add package Grpc
dotnet add package Grpc.Tools
dotnet add package Google.Protobuf
cd ..
dotnet add %name%.Service/%name%.Service.csproj reference %name%.Model/%name%.Model.csproj
dotnet add %name%.Service/%name%.Service.csproj reference %name%.General/%name%.General.csproj
dotnet add %name%.Service/%name%.Service.csproj reference %name%.BLL/%name%.BLL.csproj
dotnet add %name%.Service/%name%.Service.csproj reference %name%.DAL/%name%.DAL.csproj ::创建解决方案,并把所有工程项目加入解决方案
dotnet new sln -n %name%
for /d %%i in (*) do (
echo %%i
dotnet sln %name%.sln add %%i/%%i.csproj
) ::编译解决方案
dotnet build :end
最新目标框架版本
下表定义了最常见的目标框架、如何引用这些框架,以及它们实现的 .NET Standard 版本。 这些目标框架版本是最新的稳定版本。 预览版不会显示。 目标框架名字对象 (TFM) 是一个标准化令牌格式,用于指定 .NET 应用或库的目标框架。
| 目标 Framework | 最新 稳定版本 |
目标框架名字对象 (TFM) | 已实现 .NET Standard 版本 |
|---|---|---|---|
| .NET Standard | 2.0 | netstandard2.0 | 不可用 |
| .NET Core | 2.2 | netcoreapp2.2 | 2.0 |
| .NET Framework | 4.8 | net48 | 2.0 |
支持的目标框架版本
目标框架通常由 TFM 引用。 下表显示 .NET Core SDK 和 NuGet 客户端支持的目标框架。 等效项显示在括号内。 例如,win81 对于 netcore451 来说等效于 TFM。
| 目标 Framework | TFM |
|---|---|
| .NET Standard | netstandard1.0 netstandard1.1 netstandard1.2 netstandard1.3 netstandard1.4 netstandard1.5 netstandard1.6 netstandard2.0 |
| .NET Core |
netcoreapp1.0 netcoreapp3.0 |
| .NET Framework | net11 net20 net35 net40 net403 net45 net451 net452 net46 net461 net462 net47 net471 net472 net48 |
| Windows 应用商店 | netcore [netcore45] netcore45 [win] [win8] netcore451 [win81] |
| .NET Micro Framework | netmf |
| Silverlight | sl4 sl5 |
| Windows Phone | wp [wp7] wp7 wp75 wp8 wp81 wpa81 |
| 通用 Windows 平台 | uap [uap10.0] uap10.0 [win10] [netcore50] |
dotnet 命令
| 命令 | 函数 |
|---|---|
| dotnet build | 生成 .NET Core 应用程序。 |
| dotnet build-server | 与通过生成启动的服务器进行交互。 |
| dotnet clean | 清除生成输出。 |
| dotnet help | 显示命令更详细的在线文档。 |
| dotnet migrate | 将有效的预览版 2 项目迁移到 .NET Core SDK 1.0 项目。 |
| dotnet msbuild | 提供对 MSBuild 命令行的访问权限。 |
| dotnet new | 为给定的模板初始化 C# 或 F# 项目。 |
| dotnet pack | 创建代码的 NuGet 包。 |
| dotnet publish | 发布 .NET 依赖于框架或独立应用程序。 |
| dotnet restore | 还原给定应用程序的依赖项。 |
| dotnet run | 从源运行应用程序。 |
| dotnet sln | 用于添加、删除和列出解决方案文件中项目的选项。 |
| dotnet store | 将程序集存储到运行时包存储区。 |
| dotnet test | 使用测试运行程序运行测试。 |
项目引用
| 命令 | 函数 |
|---|---|
| dotnet add reference | 添加项目引用。 |
| dotnet list reference | 列出项目引用。 |
| dotnet remove reference | 删除项目引用。 |
NuGet 包
| 命令 | 函数 |
|---|---|
| dotnet add package | 添加 NuGet 包。 |
| dotnet remove package | 删除 NuGet 包。 |
NuGet 命令
| 命令 | 函数 |
|---|---|
| dotnet nuget delete | 从服务器删除或取消列出包。 |
| dotnet nuget locals | 清除或列出本地 NuGet 资源,例如 http 请求缓存、临时缓存或计算机范围的全局包文件夹。 |
| dotnet nuget push | 将包推送到服务器,并将其发布。 |
全局工具命令
.NET Core 全局工具可与 .NET Core SDK 2.1.300 一起开始使用:
| 命令 | 函数 |
|---|---|
| dotnet tool install | 在计算机上安装全局工具。 |
| dotnet tool list | 列出当前安装在计算机上的默认目录中或指定路径中的所有全局工具。 |
| dotnet tool uninstall | 从计算机中卸载全局工具。 |
| dotnet tool update | 在计算机上更新全局工具。 |
其他工具
自 .NET Core SDK 2.1.300 开始,许多使用 DotnetCliToolReference 的仅在每个项目的基础上可用的工具现作为 .NET Core SDK 的一部分提供。 下表中列出了这些工具:
| 工具 | 函数 |
|---|---|
| dev-certs | 创建和管理开发证书。 |
| ef | Entity Framework Core 命令行工具。 |
| sql-cache | SQL Server 缓存命令行工具。 |
| user-secrets | 管理开发用户机密。 |
| watch | 启动文件观察程序,以在更改文件时运行命令。 |
有关每个工具的详细信息,请键入 dotnet <tool-name> --help。
dotnet new
dotnet new - 根据指定的模板,创建新的项目、配置文件或解决方案。
dotnet new <TEMPLATE> [--dry-run] [--force] [-i|--install] [-lang|--language] [-n|--name] [--nuget-source] [-o|--output] [-u|--uninstall] [Template options]
dotnet new <TEMPLATE> [-l|--list] [--type]
dotnet new [-h|--help]
调用命令时要实例化的模板。 每个模板可能具有可传递的特定选项。 有关详细信息,请参阅模板选项。
如果 TEMPLATE 值与“模板”或“短名称”列中的文本不完全匹配,则会对这两列执行 substring 匹配 。
此命令包含默认的模板列表。 使用 dotnet new -l 获取可用模板的列表。 下表显示了随 .NET Core SDK 2.2.100 一起预安装的模板。 模板的默认语言显示在括号内。
| 模板 | 短名称 | 语言 | Tags |
|---|---|---|---|
| 控制台应用程序 | console |
[C#]、F#、VB | 常用/控制台 |
| 类库 | classlib |
[C#]、F#、VB | 常用/库 |
| 单元测试项目 | mstest |
[C#]、F#、VB | 测试/MSTest |
| NUnit 3 测试项目 | nunit |
[C#]、F#、VB | 测试/NUnit |
| NUnit 3 测试项 | nunit-test |
[C#]、F#、VB | 测试/NUnit |
| xUnit 测试项目 | xunit |
[C#]、F#、VB | 测试/xUnit |
| Razor 页 | page |
[C#] | Web/ASP.NET |
| MVC ViewImports | viewimports |
[C#] | Web/ASP.NET |
| MVC ViewStart | viewstart |
[C#] | Web/ASP.NET |
| ASP.NET Core 空 | web |
[C#],F# | Web/空 |
| ASP.NET Core Web 应用程序 (Model-View-Controller) | mvc |
[C#],F# | Web/MVC |
| ASP.NET Core Web 应用程序 | webapp, razor |
[C#] | Web/MVC/Razor Pages |
| 含 Angular 的 ASP.NET Core | angular |
[C#] | Web/MVC/SPA |
| 含 React.js 的 ASP.NET Core | react |
[C#] | Web/MVC/SPA |
| 含 React.js 和 Redux 的 ASP.NET Core | reactredux |
[C#] | Web/MVC/SPA |
| Razor 类库 | razorclasslib |
[C#] | Web/Razor/库/Razor 类库 |
| ASP.NET Core Web API | webapi |
[C#],F# | Web/WebAPI |
| global.json 文件 | globaljson |
配置 | |
| NuGet 配置 | nugetconfig |
配置 | |
| Web 配置 | webconfig |
配置 | |
| 解决方案文件 | sln |
解决方案 |
dotnet core 项目脚手架这种小事嘛...的更多相关文章
- 解决VS2015无法调试dotnet core项目
dotnet core 1.0正式版和VS2015 update3安装后一直无法在VS中正常调试. 错误提示:The debugger's worker process (msvsmon.exe) u ...
- dotnet core 项目
项目 常用命令 我们使用dotnet core 命令行来创建项目及进行编译,发布等,比较常用的dotnet core 命令 如下: dotnet new [arguments] [options] 创 ...
- Docker 简单发布dotnet core项目 图文版
原文:https://www.cnblogs.com/chuankang/p/9474591.html docker发布dotnet core简单流程 需要结合这个版本看哈 地址:https://ww ...
- Docker 简单发布dotnet core项目 文本版
原文:https://www.cnblogs.com/chuankang/p/9474591.html docker发布dotnet core简单流程 照着步骤来基本没错 但是有几个要注意的地方: v ...
- dotnet core项目升级到 .net core 2.0
这几天无疑我们已经让.net core 2.0正式版发布的消息刷屏,这次发布整整提前了一个月的时间,关于具体的发布信息,可以去看善友大神的博客,.NET Core 2.0 正式发布信息汇总,废话不多说 ...
- VS2017 IDE中发布自包含(SCD)DotNET Core项目
根据Stack Overflow上的一个回答得知,这项功能目前VS2017并不具备,但你可以通过如下方法发布自包含项目: 1.项目文件(.csproj)中添加RuntimeIdentifier配置项, ...
- 在Linux上部署DotNet Core项目的时候发现Apache无法转发Kestrel的5000端口的问题
CentOS服务器上使用Apache托管Dotnet Core2,服务启动了,端口也打开了.在本地使用curl命令可以访问5000端口的网页内容,但是访问Apache的端口却无法获取到网页的内容.想起 ...
- dotnet core 使用 MongoDB 进行高性能Nosql数据库操作
好久没有写过Blog, 每天看着开源的Java社区流口水, 心里满不是滋味. 终于等到了今年六月份 dotnet core 的正式发布, 看着dotnet 社区也一步一步走向繁荣, 一片蒸蒸日上的大好 ...
- DotNet Core 之旅(一)
1.下载安装 DotNetCore.1.0.0-SDK.Preview2-x64.exe 下载链接:https://www.microsoft.com/net/download ps:如果有vs201 ...
随机推荐
- 某个新闻网站抓去自媒体账号 queryId js破解
第一步: 发现加密 第二部:搜索加密参数 queryId 第三部:找到js核心加密代码 第四部:代码实现 window = {} function utf8ToBase64(t) { console. ...
- python基础语法10 函数递归,模块,软件开发目录规范
函数递归: 函数递归指的是重复 “直接调用或间接调用” 函数本身, 这是一种函数嵌套调用的表现形式. 直接调用: 指的是在函数内置,直接调用函数本身. 间接调用: 两个函数之间相互调用间接造成递归. ...
- 关于defer.promise.then 异步的一个疑问 | 用柯里化做promise | 用递归做promise
疑问:感觉会报错,因为执行到defer.promise.then这时候还没到defer.resolve,因为异步读文件,总归会慢 解答:先执行defer.promise.then,是给callback ...
- 2018南京区域赛G题 Pyramid——找规律&&递推
先手动推出前10项,再上BM板子求出递推式 $A_n = 5A_{n-1} - 10A_{n-2} + 10A_{n-3} - 5A_{n-4} + A_{n-5}$,根据特征根理论可求出特征方程 $ ...
- SpringBoot:认认真真梳理一遍自动装配原理
前言 Spring翻译为中文是“春天”,的确,在某段时间内,它给Java开发人员带来过春天,但是随着我们项目规模的扩大,Spring需要配置的地方就越来越多,夸张点说,“配置两小时,Coding五分钟 ...
- Python爬虫 | Selenium详解
一.简介 网页三元素: html负责内容: css负责样式: JavaScript负责动作; 从数据的角度考虑,网页上呈现出来的数据的来源: html文件 ajax接口 javascript加载 如果 ...
- 文件搜索命令locate
与find命令不同,locate命令不会去搜索某一个分区或硬盘,而是直接在资料库中搜索,因此,搜索的速度要比find命令快得多,linux系统会定期更新资料库. 利用locate locate命令可以 ...
- Nuxt + Vue 全家桶
引子 情由无中有,一旦有了,便万劫不复 简介 “简单却不失优雅,小巧而不乏大匠”. Vue.js 是一个JavaScriptMVVM库,是一套构建用户界面的渐进式框架.它是以数据驱动和组件化的思想构建 ...
- from表格
目录 from 功能: 表单元素 表单工作原理: input 属性说明: select标签 属性说明: label标签 属性说明: from 功能: 表单用于向服务器传输数据,从而实现用户与Web服务 ...
- 禁用F12,屏蔽鼠标右击、
$(document).ready(function(){ $(document).bind("contextmenu",function(e){ return false; }) ...