MVC 6参考问题

本文关键字:问题 参考 MVC | 更新日期: 2023-09-27 18:16:53

我在mvc6中有一个相当模糊的问题。就在今天我安装了ASP。. NET beta 7(从这里:beta http://www.microsoft.com/en-us/download/details.aspx?id=48738&fa43d42b-25b5-4a42-fe9b-1634f450f5ee=True)和mvc 6为我的解决方案(通过nuget命令:Install-Package Microsoft. aspnet . mvc -Pre),一切工作正常之前,我添加了一些参考,如微软。VisualBasic或System.Drawing。现在我得到"类型或名称空间名称无法找到"。我很有信心,我添加了对程序集的引用。还有人遇到过这个问题吗?尝试创建一个新项目并添加相同的引用-同样的问题。此外,智能感知工作得很好,它只在构建时存在引用问题。

UPD:这里是project.json

{
  "webroot": "wwwroot",
  "version": "1.0.0-*",
  "dependencies": {
    "Microsoft.AspNet.Mvc": "6.0.0-beta7",
    "Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
    "Microsoft.AspNet.Server.WebListener": "1.0.0-beta7"
  },
  "commands": {
    "web": "Microsoft.AspNet.Hosting --config hosting.ini"
  },
  "frameworks": {
    "dnx451": {
      "dependencies": {
        "SpreadsheetGear2012.Core": "1.0.0-*",
        "SpreadsheetGear2012.Drawing": "1.0.0-*"
      },
      "frameworkAssemblies": {
        "Microsoft.VisualBasic": "10.0.0.0",
        "System.Drawing": "4.0.0.0"
      }
    },
    "dnxcore50": { }
  },
  "publishExclude": [
    "node_modules",
    "bower_components",
    "**.xproj",
    "**.user",
    "**.vspscc"
  ],
  "exclude": [
    "wwwroot",
    "node_modules",
    "bower_components"
  ]
}

MVC 6参考问题

问题是您的目标是dnx451dnxcore50,但仅在dnx451中添加对System.DrawingMicrosoft.VisualBasic的依赖。在编译时,它不知道如何在针对dnxcore50进行编译时解析System.DrawingMicrosoft.VisualBasic名称空间。要解决这个问题,您可以:

project.json中的目标移到dnxcore50:

"frameworks": {
  "dnx451": {
    "dependencies": {
      "SpreadsheetGear2012.Core": "1.0.0-*",
      "SpreadsheetGear2012.Drawing": "1.0.0-*"
    },
    "frameworkAssemblies": {
      "Microsoft.VisualBasic": "10.0.0.0",
      "System.Drawing": "4.0.0.0"
    }
  }
},

或在使用System.DrawingMicrosoft.VisualBasic的地方使用#if DNX451编译:

public void MyMethod()
{
#if DNX451
    var bmp = new System.Drawing.Bitmap("file");
#endif
}