我正在尝试创建一个私有nuget包,以允许我们的组织跨多个应用程序共享MVC模型。这是我的第一次,我的灵感来自克里斯对this question的回答。
我以为我把它固定了......它构建好并在我当地的nuget Feed中显示所有正确的元数据。
但是当我尝试在其中一个应用程序中安装软件包时,我收到此错误:
You are trying to install this package into a project that targets '.NETFramework,Version=v4.5', but the package does not contain any assembly references or content files that are compatible with that framework.
我认为依赖 与4.5兼容。我的4.5项目(目标应用程序)引用相同版本的依赖项。
我发现了一个异常,这可能(不)是相关的:在project.json文件中,我有aspnet45作为框架。但在解决方案资源管理器中,引用显示了对ASP.NET 5.0的引用。
Project.json
{
"version": "1.0.0-*",
"description": "My Shared Class Library",
"authors": [ "MHL" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"System.Collections": "4.0.0.0",
"System.Linq": "4.0.0.0",
"System.Threading": "4.0.0.0",
"System.Runtime": "4.0.0.0",
"Microsoft.CSharp": "4.0.0.0",
"Microsoft.AspNet.Mvc": "5.2.2"
},
"frameworks": {
"aspnet45": {
"frameworkAssemblies": {
"System.ComponentModel.DataAnnotations": "4.0.0.0",
"System.Web": "4.0.0.0"
}
}
}
}
解决方案资源管理器>参考
问题
aspnet45
,而解决方案资源管理器中的参考部分显示ASP.NET 5.0
?我应该将 放入`project.json'文件的dependencies
,frameworks
和frameworkAssemblies
部分?在代码中,我需要的唯一using指令是:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;