5

Class Library&ASP.NETvNext Class Library项目有什么区别?从 中的项目创建来看VS 14 CTP,类库似乎根本没有改变,而“ASP.NETvNext 类库”包含新的 project.json 文件。但是,尚不清楚它是否具有与 ASP.NETvNext 相关的任何好处?

链接表示此 ASP.NETvNext 库项目的编译是动态的。他们两个之间还有其他区别吗?

4

1 回答 1

7

另一个优点是 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。

于 2014-09-10T12:47:27.890 回答