• 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.0
    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.0
    dotnet add package log4net
    dotnet add package Newtonsoft.Json
    cd ..
    
    mkdir %name%.DAL
    cd %name%.DAL
    dotnet new classlib --framework netcoreapp3.0
    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.0
    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。

    目标 FrameworkTFM
    .NET Standard netstandard1.0
    netstandard1.1
    netstandard1.2
    netstandard1.3
    netstandard1.4
    netstandard1.5
    netstandard1.6
    netstandard2.0
    .NET Core

    netcoreapp1.0
    netcoreapp1.1
    netcoreapp2.0
    netcoreapp2.1
    netcoreapp2.2

    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   解决方案
  • 相关阅读:
    redis 基础知识
    vue + django 项目部署
    django 的静态资源
    uwsgi 与 supervisor
    django基础之orm(models)初识
    django基础之模板Template
    django基础知识之视图views
    django基础知识之django介绍及url
    django基础之Web框架介绍
    mysql之pymysql模块相关
  • 原文地址:https://www.cnblogs.com/dreign/p/11427963.html
Copyright © 2020-2023  润新知