C# 如何在另一个类中使用一个类的字符串?

C# 如何在另一个类中使用一个类的字符串?,c#,C#,我在test.cs中有一个类,其中有一个字符串值string user=“testuser”。我想在另一个类中使用test.cs的user值。如何执行此操作?将字符串声明为公共: public string user = "testuser"; 然后您可以通过另一个类访问它 Test.user 但是,根据具体需要,您可能应该将字段设置为只读: public readonly string user = "testuser"; 或使用绑定到支持字段的属性: public string Use

我在
test.cs
中有一个类,其中有一个字符串值
string user=“testuser”
。我想在另一个类中使用test.cs的
user
值。如何执行此操作?

将字符串声明为公共:

public string user = "testuser";
然后您可以通过另一个类访问它

Test.user
但是,根据具体需要,您可能应该将字段设置为只读:

public readonly string user = "testuser";
或使用绑定到支持字段的属性:

public string User
{
    get { return this.user; }
}
事实上,除了极少数非常特殊的情况外,属性是从外部访问信息的标准方式。通常不建议使用公共字段

如评论中所述,还可以选择将其设置为常量(假设它实际上是一个常量值):


使成为公共财产

Public string TestUser
{
 get { return testUser;}
}

您应该为user创建一个属性,并将其公开给希望读取或写入其值的任何其他类

class MyClass
{
    private static  string user;

    public static string User
    {
        get { return user; }
        set { user = value; }
    }

}

class MyOtherClass
{
    public string  GetUserFromMyClass()
    {
        return MyClass.User;
    }
}
然后调用您的类属性,例如

AClass myClass = new AClass();
string sYak = myClass.User;

正如前面的回答所建议的,将“用户”变成一个属性是实现这一点的理想技术。但是,如果您想直接公开它,那么应该使用static来避免实例化该类的对象。此外,如果您不希望demo类操纵user的值,那么也应该声明为只读,如下所示

public static readonly user="text user";

那么,如果他们不被推荐,为什么还要推荐呢?因为这是最快的方法,而且需要最少的理解。我可以写一篇多页的文章,说明为什么字段不好,应该使用属性,但OP可能只需要完成一项工作,或者它是一件一次性的事情,根本不重要。有人问这样一个问题,可能目前还没有设计一个数百万客户将使用的框架或库。不要忘了const选项!:)在不进行太长时间的讨论的情况下,我们肯定可以通过“最佳实践”的方法来加深某人的知识。在我看来,最好一开始就把他们教好。
AClass myClass = new AClass();
string sYak = myClass.User;
public static readonly user="text user";