System.Security.Cryptography 命名空间在 .NET Framework 5.4 中不可用

System.Security.Cryptography namespace not available in .NET framework 5.4

请大家帮忙。

我在 Visual Studio 2015 年创建了一个新项目 Class Library (Package)。 我想在 MVC 6 项目中使用这个项目。 现在它抱怨密码术在 System.Security 中不存在,即使在我添加了对 System.Security 的引用之后也是如此。

即使我直接将代码提供给 MVC 6 项目,它仍然在抱怨。

我不确定它是否与 .NET Framework 版本有关,因为它还表明此命名空间在 framework 5.4 中不可用

谢谢大家的帮助。

如果这是 RC2,则引入 netstandard1.5

var aes = System.Security.Cryptography.Aes.Create();

IIRC net5.4 不再正确而且看起来你是多目标的所以可能是这样的:

#if NETSTANDARD1_5
  var aes = System.Security.Cryptography.Aes.Create();
#else
 var aes = Rijndael.Create();
#endif

非常感谢你们的帮助。 我设法通过从 project.json 文件中删除 dotnet5.4 框架来让它工作。请参阅下面的屏幕截图

创建新项目时会自动添加此框架,即使您 select framework 4.5.1.

再次感谢。