我有一个程序在某个项目中进行了一些加密(工作正常),然后我将它复制到现在使用的项目中。但奇怪的是,它无法解析Encoding.Unicode,Unicode这个词用红色加下划线。
我得到的错误说: '的System.Array'不包含' Unicode'的定义没有扩展方法' Unicode'接受类型' System.Array'的第一个参数。可以找到(你错过了使用指令或程序集引用吗?)
这是我的general.cs类文件之一:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml;
using System.Xml.Serialization;
namespace myNamespace
{
static class myClass
{
public static string myProc(string text)
{
//...
byte[] toEncrypt = Encoding.Unicode.GetBytes(text);
//...
}
}
}
奇怪的是,当我将代码复制到我的主表单时,它并没有给出任何错误,所以它与这个类有关吗?
答案 0 :(得分:1)
您在范围内的某个位置有一个名为Encoding
的数组成员(在此方法或此类中)。右键单击Encoding
标识符,然后选择"转到定义..."而且你会找到它。
重命名该成员,或者命名空间前缀:
byte[] toEncrypt = System.Text.Encoding.Unicode.GetBytes(text);
答案 1 :(得分:0)
UnicodeEncoding.GetBytes(string)
代替Encoding.Unicode.GetBytes(text)