C#Net Class引用类库:为什么我必须完全限定公共类?

时间:2014-01-17 22:21:01

标签: c# class namespaces naming fully-qualified-naming

虽然我已经构建了一个类并在下面的客户端程序中引用了一个令人讨厌的问题 - 使用,编译器需要我的方法的完全限定名称。

// this doesn't compile because it does not recognize the Decrypt method
using PGPEncryptDecrypt.Helpers.PGP;

namespace TestComInterOpPGP
{
class Program
{
    static void Main(string[] args)
    {
         PGPEncryptDecrypt.Decrypt(@"C:\Users\blah.pgp",
            @"C:\Users\secring.gpg",
            "pwd",
            @"C:\Users\out.txt");

    }
}
}

必须完全符合资格

// this does compile
using PGPEncryptDecrypt.Helpers.PGP;

namespace TestComInterOpPGP
{
class Program
{
    static void Main(string[] args)
    {
         PGPEncryptDecrypt.Helpers.PGP.PGPEncryptDecrypt.Decrypt(@"C:\Users\blah.pgp",
            @"C:\Users\secring.gpg",
            "pwd",
            @"C:\Users\out.txt");

    }
}
}

1 个答案:

答案 0 :(得分:2)

啊 - 在输入时我发现问题是类PGPEncryptDecrypt与命名空间的第一部分名称相同。所以我只是改变了一个或另一个,不需要完全符合条件。也许这会帮助别人!