可能重複:
How to get variable name using reflection?C#獲取字符串名稱的名字
如何獲得字符串名稱的名稱不是字符串的值
string MyString = "";
Response.Write(MyString.GetType().Name);//Couldn't get the string name not the value of the string
結果應該顯示返回字符串名稱「MyString」
我發現了一些建議的代碼,並重寫它使其更短,但仍然不太喜歡它。
static string VariableName<T>(T item) where T : class
{
return typeof(T).GetProperties()[0].Name;
}
Response.Write(VariableName(new {MyString})); 我正在尋找另一種方式把它縮短像下面,但沒怎麼使用轉換當前類,所以我可以在同一行中使用它們
Response.Write(typeof(new { MyString }).GetProperties()[0].Name);
爲什麼你需要那個? –
不,它不應該。答案會很快告訴你爲什麼。 – dlev
你可以使用反射,但是你有這樣一個特殊原因嗎? – keyboardP