![](/img/trans.png)
[英]C# DataTable DataGrid special character “/” (slash) in column names
[英]C# variable names with special character
我想在 C# 中的string
變量名稱中包含一些特殊字符。
示例:字符串 foo-bar = String.Empty;
據我所知,我不能像上面的例子中提到的那樣聲明一個變量。 有什么辦法可以用“-”來聲明一個變量名?
從MSDN :
您不能只選擇任何字符序列作為變量名稱。 然而,這並不像聽起來那么令人擔憂,因為您仍然擁有一個非常靈活的命名系統。 基本的變量命名規則如下:
變量名的第一個字符必須是字母、下划線字符 (_) 或 at 符號 (@)。 后續字符可以是字母、下划線字符或數字。
不,這在 C# 中是不可能的。
如果你真的,真的,真的想要這樣做,你可以使用Dictionary<string, string>
:
Dictionary<string, string> someVars = new Dictionary<string, string>()
{
{"foo-bar", String.Empty},
{"bar-foo", "bazinga"}
}
使用它們看起來像這樣:
string newstring = someVars["foo-bar"] + "Hello World!";
您不僅可以使用變量名,還可以在字典中查找字符串。 請注意,這是非常低效的,只是一個玩笑,所以請不要真正使用它;)
如果您試圖反序列化對象,您可以使用 JsonProperty 來實現這一點。
例子:
public class SubscriptionListJsonData
{
[JsonProperty(PropertyName = "subscriptions")]
public string SubscriptionData { get; set; }
[JsonProperty(PropertyName = "@nextLink")]
public string nextLink { get; set; }
}
你不能在 c# 和大多數其他編程語言中做到這一點。我還建議你遵循 C# 命名約定,因為它幫助你以一種 - 至少對我來說 - 總是感覺很舒服的方式閱讀你的代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.