如何在C#中定义属性而不是公共变量

时间:2011-03-28 06:22:46

标签: c# asp.net

public static string SEARCH_STRING = "searchkey";
string key=Request.QueryString.Get(SEARCH_STRING);    

如何更改上面的代码以使用Property(get; set;)而不是公共变量来访问SEARCH_STRING

8 个答案:

答案 0 :(得分:0)

private static string _searchString = "searchkey";
public static string SearchString { 
  get { return _searchString; }
  set { _searchString = value; }
}

答案 1 :(得分:0)

如果不改变此变量,最好使用常量

public const string SEARCH_STRING = "searchkey";

以下是如何使其成为属性

private static string _searchString = "searchkey";
public static string SEARCH_STRING { 
  get { return _searchString; }
  private set { _searchString = value; }
}

答案 2 :(得分:0)

public static string SEARCH_STRING { get; set; }

答案 3 :(得分:0)

试试这段代码:

class Foo {
static string m_searchString="searchKey";
public static string SEARCH_STRING
{
   get {return m_searchString;}
   set {m_searchString=value;}
}
}

答案 4 :(得分:0)

这就是你的意思吗?如果你要在运行时加载它的值,它可能会将它设置为只读...

public static string SEARCH_STRING 
{ 
    get
    {
        return "searchkey";
    }
}

答案 5 :(得分:0)

public string SEARCH_STRING
    {
        get { return search_string; }
        set { search_string = value; }
    }

答案 6 :(得分:0)

public static string SEARCH_STRING
    {
        get;
        set;
    }

答案 7 :(得分:0)

要获得更多封装,请使用以下属性:

public string Name
{
    get;
    private set;
}

因此该类的对象只能设置它,其他对象只能读取它。