public static string filename2_1, filename2_2, filename2_3;
filename2_1="xyz.jpg";
filename2_2="abc.png";
filename2_3="qwe.jpg";
.....
...
for (int key = 1; key <= 3; key++)
{
....
foreach (var item in tabItem)
{
item.ImagePath.Value = "images1/" + ("filename2_" + key);
item.ThumbPath.Value = "thumbnails1/" + ("filename2_" + key);
}
}
如上所述,我需要将(“filename2_”+键)转换为实际变量。任何人都可以帮我这个
答案 0 :(得分:10)
您不能拥有动态变量名称。
无法“创建”变量名称。
您可以使用数组或通用集合来保存正在使用的数据集合。
var fileSuffixList = new List<string>{ "xyz.jpg" , "abc.png", "qwe.jpg"};
foreach(string fileSuffix in fileSuffixList)
{
....
foreach (var item in tabItem)
{
item.ImagePath.Value = "images1/" + ("filename2_" + fileSuffix);
item.ThumbPath.Value = "thumbnails1/" + ("filename2_" + fileSuffix);
}
}
答案 1 :(得分:3)
正如@Oded所说,你不能拥有动态变量名。
你可以做的是使用诸如字典之类的集合:
Dictionary<string, int> dictionary = new Dictionary<string, string>();
dictionary.Add("filename2_" + key, "Value");
如果您的密钥始终为数字,您还可以使用array
或List
。但是,如果没有更多信息,很难告诉你最好的方法。