我们可以在C#中创建动态变量吗?
我知道我下面的代码是抛出错误和非常差的编码。但是这段代码有一些小的逻辑,例如创建动态变量
var name=0; for(i=0;i<10;i++)// 10 means grid length { name+i=i; } var xx1=name1; var xx2=name2; var xx3=name3;
在C#中可以吗?在C#中创建动态变量?并在C#中更改变量名称?并在c#中连接变量名( 就像我们可以连接任何控件id或name一样 )…
为什么需要动态变量名(场景):
var variablename="" var variablename0=No; var variablename1=Yes; var variablename2=No;
。。。
我gridview有多行。我需要将服务器端变量分配给每一行。所以我需要在服务器端设置变量。我可以Text=<%# variablename+rowCount%>为每个模板字段设置的唯一对象。
gridview
Text=<%# variablename+rowCount%>
这rowCount意味着每个网格行索引。
rowCount
如果网格有2行,则rowCount值为0,1,2
现在,我需要将单独更改variablename为variablename0,variablename1,variablename2动态。
variablename
variablename0,variablename1,variablename2
C#是强类型的,因此您不能动态创建变量。您可以使用数组,但是更好的C#方法是使用字典,如下所示。有关C#词典的更多信息,请参见。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace QuickTest { class Program { static void Main(string[] args) { Dictionary<string, int> names = new Dictionary<string,int>(); for (int i = 0; i < 10; i++) { names.Add(String.Format("name{0}", i.ToString()), i); } var xx1 = names["name1"]; var xx2 = names["name2"]; var xx3 = names["name3"]; } } }