C# 非静态字段方法或属性需要对象引用

C# 非静态字段方法或属性需要对象引用,c#,C#,我在调用加密方法时遇到问题。它显示错误CS0210“非静态字段、方法或属性需要对象引用”。我试图通过在加密方法中添加“static”关键字来纠正这个问题,但它也不起作用。我该如何解决这个问题 class Program { string alphabet = "ABCDEFGHIJKLMNOPQRSTYVWXYZ"; string alph = "abcdefghijklmnopqrstuvwxyz"; static void Main(string[] args)

我在调用加密方法时遇到问题。它显示错误CS0210“非静态字段、方法或属性需要对象引用”。我试图通过在加密方法中添加“static”关键字来纠正这个问题,但它也不起作用。我该如何解决这个问题

class Program
{
    string alphabet = "ABCDEFGHIJKLMNOPQRSTYVWXYZ";
    string alph = "abcdefghijklmnopqrstuvwxyz";
    static void Main(string[] args)
    {
        Console.WriteLine("Input text to encrypt: ");
        string text = Console.ReadLine();
        Console.WriteLine("Input key: ");
        string key = Console.ReadLine();

        encrypt(text, key);
        Console.ReadLine();
    }

    int positionAlphabet(char letter)
    {
        for (int i = 0; i < alphabet.Length; i++)
        {
            if (alphabet[i] == letter || alph[i] == letter)
            {
                return i;
            }
        }
        return -1;
    }
    public void encrypt(string text, string key)
    {
        string output = "";

        for (int i = 0; i < text.Length; i++)
        {
            int positionLetterKey = positionAlphabet(key[i % key.Length]);
            int positionLetterText = positionAlphabet(text[i]);
            output += alphabet[(positionLetterText + positionLetterKey) % alphabet.Length];
        }
        Console.WriteLine("Encryption output: \n", output);
    }
}
类程序
{
字符串字母表=“ABCDEFGHIJKLMNOPQRSTYVWXYZ”;
字符串alph=“abcdefghijklmnopqrstuvxyz”;
静态void Main(字符串[]参数)
{
Console.WriteLine(“输入要加密的文本:”);
string text=Console.ReadLine();
Console.WriteLine(“输入键:”);
string key=Console.ReadLine();
加密(文本、密钥);
Console.ReadLine();
}
int位置字母(字符字母)
{
for(int i=0;i
您也应该在函数前添加静态关键字。您不能从其他静态函数调用非静态函数。

谢谢,这解决了错误,但我现在遇到另一个问题。我在运行程序后没有得到任何输出,我的encrytpion无法工作。你知道怎么解决这个问题吗?我想做一个维格纳密码。请详细说明你的帖子。用您的预期输出和您现在得到的输出编辑它。那么我们可以更好地帮助您。下次,请说出哪一行出错了。您的问题是试图从静态方法
Main
访问非静态方法
encrypt
。如果将
encrypt
设置为static,它仍然无法工作,因为它调用的
positionAlphabet
也是非静态的。把它们都修好,它应该会起作用。