.NET Core RC2 - NeutralResourcesLanguageAttribute

.NET Core RC2 - NeutralResourcesLanguageAttribute

随着 .NET Core RC2 的新版本,当使用新的 SDK 1.0.0-preview1-002702 编译项目时(从版本 1.0.0-rc1-update1 迁移后),它会为每个框架生成一个文件dotnet-compile.assemblyinfo.cs包含属性 System.Resources.NeutralResourcesLanguageAttribute。示例:

// <auto-generated> This file has been auto generated. </auto-generated>
[assembly:System.Reflection.AssemblyFileVersionAttribute("1.0.1.0")]
[assembly:System.Resources.NeutralResourcesLanguageAttribute("en-US")]
[assembly:System.Runtime.Versioning.TargetFrameworkAttribute(".NETStandard,Version=v1.0")]

我的问题是,在编译为新的 NET Standard 框架等框架时,我现在必须向 System.Resources.ResourceManager 添加依赖项,否则将无法编译。

有什么办法可以避免这种情况吗?

这是我现在的 project.json:

{
  "version": "1.0.1",
  "title": "Simple Exception Handling",
  "description": "Library that helps developers to handle exceptions outside catch blocks. Typical usages are global exception handlers.",
  "authors": [ "João Simões" ],
  "language": "en-US",
  "copyright": "Copyright © 2016 João Simões",
  "packOptions": {
    "summary": "Library that helps developers to handle exceptions outside catch blocks.",
    "tags": [ "exception", "handler" ],
    "projectUrl": "https://github.com/gravity00/SimpleExceptionHandling",
    "licenseUrl": "https://raw.githubusercontent.com/gravity00/SimpleExceptionHandling/master/LICENSE",
    "iconUrl": "https://raw.githubusercontent.com/gravity00/SimpleExceptionHandling/master/SimpleExceptionHandling-Logo.png",
    "releaseNotes": "Library is now strong signed",
    "owners": [ "João Simões" ],
    "repository": {
      "type": "git",
      "url": "https://github.com/gravity00/SimpleExceptionHandling"
    }
  },
  "buildOptions": {
    "xmlDoc": true,
    "optimize": true,
    "keyFile": "SimpleExceptionHandling.snk"
  },

  "frameworks": {
    ".NETPortable,Version=v4.0,Profile=Profile328": {
      "buildOptions": {
        "define": [ "PORTABLE40" ]
      },
      "frameworkAssemblies": {
        "mscorlib": "",
        "System": "",
        "System.Core": ""
      }
    },
    "dnxcore5": {
      "dependencies": {
        "System.Runtime": "4.0.0",
        "System.Resources.ResourceManager": "4.0.0"
      }
    },
    "dotnet": {
      "dependencies": {
        "System.Runtime": "4.0.0",
        "System.Resources.ResourceManager": "4.0.0"
      }
    },
    "net20": { },
    "net35": { },
    "net40": { },
    "net45": { },
    "netcore45": {
      "dependencies": {
        "System.Runtime": "4.0.0",
        "System.Resources.ResourceManager": "4.0.0"
      }
    },
    "netstandard10": {
      "imports": [ "dnxcore50" ],
      "dependencies": {
        "System.Runtime": "4.0.0",
        "System.Resources.ResourceManager": "4.0.0"
      }
    }
  }
}

包含 [NeutralResourcesLanguage] 属性,因为您要求包含它,方法是在 project.json 中设置 "language": "en-US" .

如果您不想依赖 System.Resources.ResourceManager 包,请从 project.json 中删除该行。