0
嗨,还有一个简单的问题。c#scope/typing/assignment question
我想创建一个变量对象,以便取决于某些东西的值,它会根据需要进行转换。例如
var rule;
switch (seqRuleObj.RuleType) {
case SeqRuleObj.type.Pre :
rule = new preConditionRuleType();
rule = (preConditionRuleType)seqRuleObj.Rule;
break;
case SeqRuleObj.type.Post :
rule = new postConditionRuleType();
rule = (postConditionRuleType)seqRuleObj.Rule;
break;
case SeqRuleObj.type.Exit :
rule = new exitConditionRuleType();
rule = (exitConditionRuleType)seqRuleObj.Rule;
break;
default :
break;
}
String result;
foreach (sequencingRuleTypeRuleConditionsRuleCondition cond in rule.ruleConditions.ruleCondition) {
....../ blah
}
所以基本上这是行不通的。因为名称已经定义,c#将不允许我在每种情况下创建一个新对象。
我可以将foreach循环粘贴到每个案例中,但这对我来说太浪费了,因为对象除了名字之外完全一样。
欢迎来到Stackoverflow!据我所知,这个问题与动态对象无关。这是范围/打字/分配问题。请适当修改 - 一个正确的题目会让更多的人看到它。 – Greg 2010-12-21 15:41:14
好的没问题greg,谢谢。 – Shannow 2010-12-22 09:49:36