Visual studio C# packages

本文关键字:packages studio Visual | 更新日期: 2023-09-27 18:13:03

这是我对VS:S的问题在第一个项目中:System.Security.Cryptography.AesCryptoServiceProvider obj;
一切都好
在第二个项目中:
System.Security.Cryptography.AesCryptoServiceProvider obj1;
它不识别AesCryptoServiceProvider?!!

是VS使用不同的包还是什么?

已更新:更改了变量名,但仍然不工作

Visual studio C# packages

var为保留关键字。使用不同的标识符名称或@var

System.Security.Cryptography.AesCryptoServiceProvider @var;

这可能不是问题-您需要确保每个项目都有对包含System.Security.Cryptography的程序集System.Core的引用。

你还需要确保你的目标框架版本包含这个类。这可以在项目属性页中完成。

检查两个项目是否都引用了System.Core。可能只有第一个有。您必须将其添加到两者上才能使用AesCryptoServiceProvider

此外,正如您在这里看到的,AesCryptoServiceProvider仅从。net 3.5开始可用。检查项目的属性,特别是Target Framework

两个项目之间的引用相同吗?打开参考资料看看。我打赌你肯定少了一个。然而,你真的应该使用一个不同的变量名,而不是var.另外,你能发布准确的错误吗?

你不能将变量命名为var,因为它是一个保留字,使用不同的名称,这将不会导致错误:

System.Security.Cryptography.AesCryptoServiceProvider _var;

编辑:

AesCryptoServiceProvider仅在。net框架4和3.5 SP1中支持,更改目标框架,它将工作,并确保在该文件中有System.Security.Cryptography;