创建动态变量名C#可以创建动态变量吗?我知道我下面的代码是错误的并且编码不当。但是这段代码的逻辑非常小,比如创建动态变量varname=0;for(i=0;i<10;i++)//10表示网格长度{name+i=i;}varxx1=名字1;是varxx2=name2;varxx3=名称3;在C#中可能吗?在C#中创建动态变量?并在C#中更改变量名称?并在C#中连接变量名(就像我们可以连接任何控件ID或名称一样)...为什么我需要动态变量名(方案):varvariablename=""varvariablename0=No;var变量名1=是;var变量名2=否;...我有一个包含多行的gridview。我需要为每一行分配服务器端变量。所以我需要在服务器端设置变量。我唯一能做的就是为每个模板字段设置Text=。此rowCount代表每个网格行索引。如果网格有2行,则rowCount值为0,1,2现在我需要将单独行的variablename0、variablename1、variablename2动态更改为variablename0、variablename1、variablename2。C#是强类型的,因此您不能动态创建变量。您可以使用数组,但更好的C#方法是使用字典,如下所示。更多关于C#字典的信息。使用System.Collections.Generic;使用System.Linq;使用系统文本;使用System.Threading.Tasks;namespaceQuickTest{classProgram{staticvoidMain(string[]args){字典名称=newDictionary();for(inti=0;i不,那是不可能的。你应该使用一个数组:name[i]=i;在这种情况下你的名字+我是名字[i]。试试这个,用户json序列化和反序列化:usingSystem;使用System.Collections.Generic;使用System.Linq;使用系统文本;使用System.Threading.Tasks;使用System.Web.Script.Serialization;namespaceConsoleApplication1{publicclassProgram{staticvoidMain(string[]args){objectnewobj=newobject();for(inti=0;itemp=newList();temp.Add(i);temp.Add(i+1);newobj=newobj.AddNewField("item_"+i.ToString(),temp.ToArray());}}}publicstaticclassDynamicExtention{publicstaticobjectAddNewField(thisobjectobj,stringkey,objectvalue){JavaScriptSerializerjs=newJavaScriptSerializer();stringdata=js.Serialize(obj);stringnewPrametr="""+key+"":"+js.Serialize(value);if(data.Length==2){data=data.Insert(1,newPrametr);}else{data=data.Insert(data.Length-1,","+newPrametr);}returnjs.DeserializeObject(data);}}}变量名应该知道什么时候编译。如果您打算在运行时动态填充这些名称,您可以使用Listvarvariables=List();variables.Add(newVariable{Name=inputStr1});variables.Add(newVariable{Name=inputStr2});entercharactersherestring可以是任何文本或任何不可能的列表,它会给你一个编译时错误,你可以使用数组来满足这样的要求。供大家参考:http://msdn.microsoft.com/en-us/library/aa288453%28v=vs.71%29.aspx以上是C#学习教程:创建动态变量名分享的全部内容,如果你有使用过,需要进一步了解C#学习教程。希望大家多多关注---本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
