Class Library
&ASP.NETvNext Class Library
项目有什么区别?从 中的项目创建来看VS 14 CTP
,类库似乎根本没有改变,而“ASP.NETvNext 类库”包含新的 project.json 文件。但是,尚不清楚它是否具有与 ASP.NETvNext 相关的任何好处?
此链接表示此 ASP.NETvNext 库项目的编译是动态的。他们两个之间还有其他区别吗?
Class Library
&ASP.NETvNext Class Library
项目有什么区别?从 中的项目创建来看VS 14 CTP
,类库似乎根本没有改变,而“ASP.NETvNext 类库”包含新的 project.json 文件。但是,尚不清楚它是否具有与 ASP.NETvNext 相关的任何好处?
此链接表示此 ASP.NETvNext 库项目的编译是动态的。他们两个之间还有其他区别吗?
另一个优点是 vNext 项目在构建时输出 nuget-packages,而 pre-vNext 类库仅输出 DLL。如果您在 project.json 文件中指定多个目标框架,则构建的 nuget-package 将包含为所有这些目标框架构建的 DLL。
作为一个例子,这里是一个 project.json:
{
"dependencies": {
"Microsoft.Framework.DependencyInjection": "1.0.0-*",
"System.Linq": "4.0.0.0",
},
"frameworks": {
"net45": {},
"aspnetcore50": {}
}
}
如果您从类库项目文件夹中运行“kpm build”命令,它将输出一个包含以下文件的 nuget-package。
lib/aspnetcore50/ProjectName.dll
lib/aspnetcore50/ProjectName.xml
lib/net45/ProjectName.dll
lib/net45/ProjectName.xml
当您从其他项目中引用此类库时,它将根据所需的目标框架使用正确的 DLL。