// Hello WorldプログラムのCodeDomを生成する。
  public static CodeCompileUnit GenerateCompileUnit() {
    CodeCompileUnit unit = new CodeCompileUnit();

    CodeNamespace ns = new CodeNamespace();
    unit.Namespaces.Add(ns);

    CodeTypeDeclaration hello = new CodeTypeDeclaration("Hello");
    hello.TypeAttributes = TypeAttributes.NotPublic;
    ns.Types.Add(hello);

    CodeEntryPointMethod main = new CodeEntryPointMethod();
    hello.Members.Add(main);

    CodeMethodInvokeExpression write_line = new CodeMethodInvokeExpression();
    write_line.Method = new CodeMethodReferenceExpression( new CodeTypeReferenceExpression(typeof(Console)), "WriteLine" );
    write_line.Parameters.Add( new CodePrimitiveExpression("Hello World!!") );
    main.Statements.Add(write_line);

    return unit;
  }
}