Sap*_*huA 26 project.json asp.net-core
刚安装了rc1工具并创建了一个新的Web项目,以查看模板中的更改内容.
我注意到project.json现在包含:
"compilationOptions": {
"emitEntryPoint": true
}
Run Code Online (Sandbox Code Playgroud)
但目前还不清楚这是做什么的.
有没有人有想法?
arm*_*oon 25
如下所述:看起来它是编译器的标志,表明项目是控制台应用程序而不是库(即:控制台应用程序必须包含public static void Main())
你可以在这里看到来源.
在新的RC1默认Web应用程序模板中,您会注意到底部Startup.cs有一个新的表达式bodied方法作为入口点:
public static void Main(string[] args) => WebApplication.Run<Startup>(args);
Run Code Online (Sandbox Code Playgroud)
如果删除此方法然后执行build(dnu build),您将收到错误:
error CS5001: Program does not contain a static 'Main' method suitable for an entry point
Run Code Online (Sandbox Code Playgroud)
但是,如果您将emitEntryPoint标志更改为false并再次尝试构建,则会成功.这是因为它正在创建一个库而不是一个控制台应用程序.
Sta*_*ams 10
我在源头看到了这个;
var outputKind = compilerOptions.EmitEntryPoint.GetValueOrDefault() ?
OutputKind.ConsoleApplication : OutputKind.DynamicallyLinkedLibrary;
Run Code Online (Sandbox Code Playgroud)
看起来它告诉编译器是创建控制台应用程序还是库.
另外,如果在VS2015中创建新的类库(包)和控制台应用程序(包),您将看到控制台应用程序的project.json包含以下内容,而类库则不包括;
"compilationOptions": {
"emitEntryPoint": true
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8751 次 |
| 最近记录: |