网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
.Net的CodeDOM技术实现语言无关的Code Wizard
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式
vokeExpression invokeSave = new CodeMethodInvokeExpression(m_XmlExpression, "Save",
    m_XmlFileExpression);
    CodeStatementCollection statements = new CodeStatementCollection();
    statements.Add(invokeLoadXml);
    statements.Add(invokeSave);
    // 产生if语句:  "if (System.IO.File.Exists(m_XmlFile))  else  "
    CodeConditionStatement ifStatement = new CodeConditionStatement(new CodeMethodInvokeExpression(
   new CodeVariableReferenceExpression("System.IO.File"), "Exists", m_XmlFileExpression), new CodeStatement { } ,
   new CodeStatement { statements[0], statements });
    // 产生 "m_xml.Load(m_XmlFile);"
    CodeMethodInvokeExpression invokeLoad = new CodeMethodInvokeExpression(m_XmlExpression, "Load",
     m_XmlFileExpression);
    // 产生 "m_AddFlag = false;"
    CodeAssignStatement assignAddFalse = new CodeAssignStatement(m_AddFlagExpression,
    new CodePrimitiveExpression(false));
    constructor.Statements.Add(assignXmlFile);
    constructor.Statements.Add(ifStatement);
    constructor.Statements.Add(invokeLoad);
    constructor.Statements.Add(assignAddFalse);
     m_Class.Members.Add(constructor);
}

七、Add和Save方法生成

Add方法只有一条语句,功能是将m_AddFlag设为true,以使数据表类处于加入状态。Save方法比较复杂。它的功能是当m_AddFlag为true时在数据表文件的最后加入一条记录,并保存。具体实现代码如下:


private void GenerateMethods()
{
CodeTypeReference voidReference = new CodeTypeReference("System.void");
    //产生Add方法
    CodeMemberMethod add = new CodeMemberMethod();
    add.ReturnType = voidReference;
    add.Name = "add";
    add.Attributes = MemberAttributes.Public | MemberAttributes.Final;
    CodeAssignStatement assignAddTrue = new CodeAssignStatement(m_AddFlagExpression,
    new CodePrimitiveExpression(true));
    add.Statements.Add(assignAddTrue);
    m_Class.Members.Add(add);
    //产生Save方法
    CodeMemberMethod save = new CodeMemberMethod();
   save.ReturnType = voidReference;
  &
  • 上一篇资讯: matlab与C# 矩阵转换
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号