首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CodeDom方法序列

CodeDom方法序列
EN

Stack Overflow用户
提问于 2012-05-09 21:48:46
回答 1查看 89关注 0票数 0

你能告诉我如何使用CodeDOM (.net)来做下面这样的语句吗?

代码语言:javascript
复制
_myClass.Configure("MyNode").Action("param1", "param2");

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2012-07-19 03:22:23

假设_myClass是您正在使用的类中的一个字段,您可以通过引用该字段来构建图形。

代码语言:javascript
复制
CodeExpression fieldReferenceExpression = new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "_myClass")

然后,使用字符串值"MyNode“的原始表达式作为参数调用字段上的Configure方法。

代码语言:javascript
复制
CodeExpression configureInvokeExpression = new CodeMethodInvokeExpression(
           new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "_myClass"),
           "Configure",
           new CodePrimitiveExpression("MyNode"))

最后,您将使用该表达式调用操作方法,并使用"param1“和"param2”作为参数。

代码语言:javascript
复制
CodeExpression actionInvokeExpression = new CodeMethodInvokeExpression(
        new CodeMethodInvokeExpression(
           new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "_myClass"),
           "Configure",
           new CodePrimitiveExpression("MyNode")),
        "Action", 
        new CodePrimitiveExpression("param1"),
        new CodePrimitiveExpression("param2"));

使用CSharpCodeProvider,这将生成:

代码语言:javascript
复制
this._myClass.Configure("MyNode").Action("param1", "param2")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10517474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档