[asp.net core]project.json(2)

摘要

上篇文章介绍了project.json中的一部分属性。属性真的比较多,所以分开了,考虑到其中的英文比较简单,也不再进行翻译了,从英文原文中,直接粘贴过来了。

project.json(1)

project.json

publicSign

Type: Boolean

true to enable signing of the resulting assembly; otherwise, false. The default is false.

For example:

{
    "buildOptions": {
        "publicSign": true
    }
}

debugType

Type: String

Indicates the type of symbol file (PDB file) to generate. The options are "portable" (for .NET Core projects) or "full" (the traditional Windows-only PDB files).

For example:

{
    "buildOptions": {
        "debugType": "portable"
    }
}

xmlDoc

Type: Boolean

true to generate XML documentation from triple-slash comments in the source code; otherwise, false. The default is false.

For example:

{
    "buildOptions": {
        "xmlDoc": true
    }
}

preserveCompilationContext

Type: Boolean

true to preserve reference assemblies and other context data to allow for runtime compilation; otherwise, false. The default is false.

For example:

{
    "buildOptions": {
        "preserveCompilationContext": true
    }
}

outputName

Type: String

Change the name of the output file.

For example:

{
    "buildOptions": {
        "outputName": "MyApp"
    }
}

compilerName

Type: String

The name of the compiler used for this project. csc by default. Currently, csc (the C# compiler) or fsc (the F# compiler) are supported.

For example:

{
    "compilerName": "fsc"
}

compile

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

Specifies which files to include in the build. The patterns are rooted at the project folder. Defaults to none.

For example:

{
    "include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build. The exclude patterns have higher priority than the include patterns, so a file found in both will be excluded. The patterns are rooted at the project folder. Defaults to none.

For example:

{
    "exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern.

A list of file paths to include. The paths are rooted at the project folder. This list has a higher priority than the include and exclude globbing patterns, hence a file listed here and in the exclude globbing pattern will still be included. Defaults to none.

For example:

{
    "includeFiles": []
}

excludeFiles

Type: String or String[] with a globbing pattern.

A list of file paths to exclude. The paths are rooted at the project folder. This list has a higher priority than globbing patterns and the include paths, hence a file found in all will be excluded. Defaults to none.

For example:

{
    "excludeFiles":[],
}

builtIns

Type: Object

The defaults provided by the system. It can have include and exclude globbing patterns which are merged with the corresponding values of the include and exclude properties.

For example:

{
    "builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
    "mappings": {
        "dest/path": "./src/path"
    }
}

Object example:

{
    "mappings": {
        "dest/path":{
            "include":"./src/path"
        }
    }
}

embed

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

{
    "include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
    "exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern.

{
    "includeFiles":[],
}

excludeFiles

Type: String or String[] with a globbing pattern

{
    "excludeFiles":[],
}

builtIns

Type: Object

{
    "builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
    "mappings": {
        "dest/path": "./src/path"
    }
}

Object example:

{
    "mappings": {
        "dest/path":{
            "include":"./src/path"
        }
    }
}

copyToOutput

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

{
    "include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
    "exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern

{
    "includeFiles":[],
}

excludeFiles

Type: String or String[] with a globbing pattern.

{
    "excludeFiles":[],
}

builtIns

Type: Object

{
    "builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
    "mappings": {
        "dest/path": "./src/path"
    }
}

Object example:

{
    "mappings": {
        "dest/path":{
            "include":"./src/path"
        }
    }
}

publishOptions

Type: Object

An object containing properties for compilation configuration.

include

Type: String or String[] with a globbing pattern.

{
    "include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
    "exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern

{
    "includeFiles":[],
}

excludeFiles

Type: String or String[] with a globbing pattern.

{
    "excludeFiles":[],
}

builtIns

Type: Object

{
    "builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object represtation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
    "mappings": {
        "dest/file": "./src/file",
        "dest/folder/": "./src/folder/**/*"
    }
}

Object example:

{
    "mappings": {
        "dest/file":{
            "include":"./src/file"
        },
        "dest/folder/":{
            "include":"./src/folder/**/*"
        }
    }
}

runtimeOptions

Type: Object

Specifies parameters to be provided to the runtime during initialization.

configProperties

Type: Object

Contains configuration properties to configure the runtime and the framework.

System.GC.Server

Type: Boolean

true to enable server garbage collection; otherwise, false. The default is false.

For example:

{
    "runtimeOptions": {
        "configProperties": {
            "System.GC.Server": true
        }
    }
}

System.GC.Concurrent

Type: Boolean

true to enable concurrent garbage collection; otherwise, false. The default is false.

For example:

{
    "runtimeOptions": {
        "configProperties": {
            "System.GC.Concurrent": true
        }
    }
}

System.GC.RetainVM

Type: Boolean

true to put segments that should be deleted on a standby list for future use instead of releasing them back to the operating system (OS); otherwise, false. The default is false.

For example:

{
    "runtimeOptions": {
        "configProperties": {
            "System.GC.RetainVM": true
        }
    }
}

System.Threading.ThreadPool.MinThreads

Type: Integer

Overrides the number of minimum threads for the ThreadPool worker pool.

{
    "runtimeOptions": {
        "configProperties": {
            "System.Threading.ThreadPool.MinThreads": 4
        }
    }
}

System.Threading.ThreadPool.MaxThreads

Type: Integer

Overrides the number of maximum threads for the ThreadPool worker pool.

{
    "runtimeOptions": {
        "configProperties": {
            "System.Threading.ThreadPool.MaxThreads": 25
        }
    }
}

framework

Type: Object

Contains shared framework properties to use when activating the application. The presence of this section indicates that the application is a portable app designed to use a shared redistributable framework.

name

Type: String

Name of the shared framework.

{
    "runtimeOptions": {
        "framework": {
            "name": "Microsoft.DotNetCore"
        }
    }
}

version

Type: String

Version of the shared framework.

{
    "runtimeOptions": {
        "framework": {
            "version": "1.0.1"
        }
    }
}

applyPatches

Type: Boolean

true to use the framework from either the same or a higher version that differs only in the SemVer patch field. false for the host to use only the exact framework version. The default is true.

{
    "runtimeOptions": {
        "applyPatches": false
    }
}

packOptions

Type: Object

Defines options pertaining to the packaging of the project output into a NuGet package.

summary

Type: String

A short description of the project.

For example:

{
    "packOptions": {
        "summary": "This is my library."
    }
}

tags

Type: String[]

An array of strings with tags for the project, used for searching in NuGet.

For example:

{
    "packOptions": {
        "tags": ["hyperscale", "cats"]
    }
}

owners

Type: String[]

An array of strings with the names of the owners of the project.

For example:

{
    "packOptions": {
        "owners": ["Fabrikam", "Microsoft"]
    }
}

releaseNotes

Type: String

Release notes for the project.

For example:

{
    "packOptions": {
        "releaseNotes": "Initial version, implemented flimflams."
    }
}

iconUrl

Type: String

The URL for an icon that will be used in various places such as the package explorer.

For example:

{
    "packOptions": {
        "iconUrl": "http://www.mylibrary.gov/favicon.ico"
    }
}

projectUrl

Type: String

The URL for the homepage of the project.

For example:

{
    "packOptions": {
        "projectUrl": "http://www.mylibrary.gov"
    }
}

licenseUrl

Type: String

The URL for the license the project uses.

For example:

{
    "packOptions": {
        "licenseUrl": "http://www.mylibrary.gov/licence"
    }
}

requireLicenseAcceptance

Type: Boolean

true to cause a prompt to accept the package license when installing the package to be shown; otherwise, false. Only used for NuGet packages, ignored in other uses. The default is false.

For example:

{
    "packOptions": {
        "requireLicenseAcceptance": true
    }
}

repository

Type: Object

Contains information about the repository where the project is stored.

type

Type: String

Type of the repository. The default value is "git".

For example:

{
    "packOptions": {
        "repository": {
            "type": "git"
        }
    }
}

url

Type: String

URL of the repository where the project is stored.

For example:

{
    "packOptions": {
        "repository": {
            "url": "http://github.com/dotnet/corefx"
        }
    }
}

files

Type: Object

include

Type: String or String[] with a globbing pattern.

{
    "include":["wwwroot", "Views"]
}

exclude

Type: String or String[] with a globbing pattern.

Specifies which files to exclude from the build.

For example:

{
    "exclude": ["bin/**", "obj/**"]
}

includeFiles

Type: String or String[] with a globbing pattern.

{
    "includeFiles":[]
}

excludeFiles

Type: String or String[] with a globbing pattern.

{
    "excludeFiles":[]
}

builtIns

Type: Object

{
    "builtIns":{}
}

mappings

Type: Object

Keys to the object represent destination paths in the output layout.

Values are either a string or an object representing the source path of files to include. The object representation can have its own include, exclude, includeFiles and excludeFiles sections.

String example:

{
    "mappings": {
        "dest/path": "./src/path"
    }
}

Object example:

{
    "mappings": {
        "dest/path":{
            "include":"./src/path"
        }
    }
}

analyzerOptions

Type: Object

An object with properties used by code analysers.

For example:

{
    "analyzerOptions": { }
}

languageId

Type: String

The id of the language to analyze. "cs" represents C#, "vb" represents Visual Basic and "fs" represents F#.

For example:

"analyzerOptions": {
    "languageId": "vb"
}

configurations

Type: Object

An object whose properties define different configurations for this project, such as Debug and Release. Each value is an object that can contain a buildOptions object with options specific for this configuration.

For example:

"configurations": {
    "Release": {
        "buildOptions": {
            "allowUnsafe": false
        }
    }
}

frameworks

Type: Object

Specifies which frameworks this project supports, such as the .NET Framework or Universal Windows Platform (UWP). Must be a valid Target Framework Moniker (TFM). Each value is an object that can contain information specific to this framework such as buildOptions, analyzerOptions, dependencies as well as the properties in the following sections.

For example:

"frameworks": {
    "netcoreapp1.0": {
        "buildOptions": {
            "define": ["FOO", "BIZ"]
        }
    }
}

dependencies

Type: Object

Dependencies that are specific for this framework. This is useful in scenarios where you cannot simply specify a package-level dependency across all targets. Reasons for this can include one target lacking built-in support that other targets have, or requiring a different version of a dependency than other targets. To see a list of the other properties for this node, see the earlier dependencies section.

For example:

  "frameworks": {
        "netstandard1.5": {
        "dependencies": {
            "Microsoft.Extensions.JsonParser.Sources": "1.0.0-rc2-20221"
        }
    }
}

frameworkAssemblies

Type: Object

Similar to dependencies but contains reference to assemblies in the GAC that are not NuGet packages. Can also specify the version to use as well as the dependency type. This is used when targeting .NET Framework and Portable Class Library (PCL) targets. You can only build a project with this specified on Windows.

For example:

"frameworks": {
    "net451": {
        "frameworkAssemblies": {
            "System.Runtime": {
                "type": "build",
                "version": "4.0.0"
            }
        }
    }
}

wrappedProject

Type: String

Specifies the location of the dependency project.

For example:

"frameworks": {
    "net451": {
        "wrappedProject": "MyProject.csproj"
    }
}

bin

Type: Object

This is used wrap a DLL file. You can reference and generate a package containing this DLL.

It contains a single String property, assembly, whose value is the assembly path.

For example:

"frameworks": {
    "netcoreapp1.0": {
        "bin": {
            "assembly": "c:/otherProject/otherdll.dll"
        }
    }
}

runtimes

Type: Object

List of runtime identifiers (RIDs) supported by the project (used when publishing self-contained deployments).

For example:

"runtimes": {
    "win7-x64": {},
    "win8-x64": {},
    "win81-x64": {},
    "win10-x64": {},
    "osx.10.11-x64": {},
    "ubuntu.16.04-x64": {}
}

userSecretsId

Type: String

Specifies a user secret identifier to be used at development-time. For more information, see Safe storage of app secrets during development.

For example:

{
    "userSecretsId": "aspnet-WebApp1-c23d27a4-eb88-4b18-9b77-2a93f3b15119"
}
时间: 2024-12-13 18:59:15

[asp.net core]project.json(2)的相关文章

[asp.net core]project.json(1)

摘要 前面介绍了使用vs2015新建asp.net core web的内容,这篇文章学习下project.json文件的内容. project.json 原文:https://docs.microsoft.com/zh-cn/dotnet/articles/core/tools/project-json project.json文件用来定义asp.net core项目的元数据,编译信息和依赖.在本篇文章中,你可以看到你能在project.json中定义的所有属性列表. Note .NET Cor

ASP.NET Core的配置(5):配置的同步[ 实例篇]

ConfigurationBuilder在生成以Configuration对象的时候会利用注册其中的ConfigurationProvider加载原始的配置数据,那么一旦配置源中的数据发生变化,应用程序中的使用的配置信息如何与之同步呢?如果需要在应用程序中实现对配置信息的实施同步,就需要对原始配置数据的进行监控,并在数据改变的时候重新加载配置数据.除此之外,重新加载的配置需要应用到程序中,我们必然需要一种通知机制. 为了让读者朋友们对配置同步机制在具体项目中的应用有个感官认识,我们先通过一个简单

ASP.NET Core的配置(3): 将配置绑定为对象[上篇]

出于编程上的便利,我们通常不会直接利用ConfigurationBuilder创建的Configuration对象读取某个单一配置项的值,而是倾向于将一组相关的配置绑定为一个对象,我们将后者称为Options对象.我们在本章第一节通过简单的实例演示了如何利用Options模型实现了配置数据向Options对象的绑定,现在我们对Options模型背后的实现原理进行详细介绍. 目录一.ConfigurationBinder二.绑定简单对象三.绑定复杂对象四.绑定集合对象五.绑定字典对象 一.Conf

ASP.NET Core的配置(5):配置的同步[设计篇]

本节所谓的"配置同步"主要体现在两个方面:其一,如何监控配置源并在其变化的时候自动加载其数据,其目的是让应用中通过Configuration对象承载的配置与配置源的数据同步:其二.当Configuration对象承载的配置放生变换的时候如何向应用程序发送通知,最终让应用程序使用最新的配置. 一.配置与配置源的同步 配置模型提供了三个原生ConfigurationProvider(JsonConfigrationProvider.XmlConfigurationProvider和IniC

ASP.NET Core的配置(3): 将配置绑定为对象[下篇]

我们在<读取配置信息>通过实例的形式演示了如何利用Options模型以依赖注入的方式直接获取由指定配置节绑定生成的Options对象,我们再次回顾一下当初我们编写的程序.如下面的代码片段所示,基于Options模型的配置绑定的编程基本采用这样的模式:先后调用ServiceCollection的扩展方法AddOption和Configure注册Options模型相关的服务并完成Options类型与指定配置节之间的映射,然后利用由此生成ServiceProvider获得一个类型为IOptions&

ASP.net Core部署说明(Ubuntu) [转]

最近在学习asp.net core,当然学习的目的是想了解一下,Asp.net core是否真的能够是先跨平台部署. 根据目前官网资料说明,asp.net core只有在Redhat 企业版上,才能够实现所有的功能.不过这个版本是收费的,可能不是大多数人的最佳选择. 笔者目前选择的实验环境是Ubuntu 16.4 和CentOS7这两个平台. 从长远角度来说,CentOS7维护周期长,更加适合企业生产环境.Ubuntu择以更加活跃的社区,更加快速的更新受到欢迎,不过他的维护周期一般只有2~3年,

ASP.NET Core快速入门(Jessetalk)(第2章:配置管理)

课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的映射 - Options 与 Bind 配置文件热更新 框架设计:Configuration 任务10:命令行配置 新建一个项目CommandLineSample--控制台应用(.NET Core) 依赖性右键--管理NuGet程序包--下载microsoft.aspnetcore.all 传入参数

asp.net core 视图组件(转)

介绍视图组件 视图组件是 ASP.NET Core MVC 中的新特性,与局部视图相似,但是它们更加的强大.视图组件不使用模型绑定,只取决于调用它时所提供的数据.视图组件有以下特点: 渲染一个块,而不是整个响应 在控制器和视图之间同样包含了关注点分离和可测试性带来的好处 可以拥有参数和业务逻辑 通常从布局页调用 视图组件可以用在任何需要重复逻辑且对局部视图来说过于复杂的情况,比如: 动态导航菜单 标签云 (需要从数据库查询时) 登录面板 购物车 最近发表的文章 一个典型博客的侧边栏内容 会在所有

ASP.NET Core快速入门(Jessetalk)(第三章:依赖注入)

课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务16:介绍 1.依赖注入概念详解 从UML和软件建模来理解 从单元测试来理解 2.ASP.NET Core 源码解析 任务17:从UML角度来理解依赖 1.什么是依赖 当一个类A完成某个任务需要另一个类B来帮助时,A就对B产生了依赖 例如CustomerController需要对customer进行新增或查找时用到EF,则对EF的Context产生了依赖 var cont