如何让我的nuget包兼容.net 4.5?

时间:2015-11-18 17:15:39

标签: c# .net asp.net-mvc nuget-package nuget-spec

我正在尝试创建一个私有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"
            }
        }
    }
}

解决方案资源管理器>参考

enter image description here

问题

  1. 最重要的是,我该如何解决这个问题并让它发挥作用?
  2. 为什么我在项目json中使用aspnet45,而解决方案资源管理器中的参考部分显示ASP.NET 5.0
  3. 我应该将 放入`project.json'文件的dependenciesframeworksframeworkAssemblies部分?在代码中,我需要的唯一using指令是:

    using System;

    using System.Collections.Generic;

    using System.ComponentModel.DataAnnotations;

  4. 对于一个更有能力的开发人员来说,第三季度可能是不言自明的。但我只是想解决这个问题,所以任何有关解释/细节都会受到欢迎。

0 个答案:

没有答案