예제 #1
0
        public override int QueryService(ref Guid guidService, out object result)
        {
            //
            // If you have a code dom provider you'd provide it here.
            if (guidService == typeof(SVSMDCodeDomProvider).GUID)
            {
                result = new PowerShellCodeDomProvider();
                return(VSConstants.S_OK);
            }

            return(base.QueryService(ref guidService, out result));
        }
예제 #2
0
        private static string CSharpToPowerShell(string csharp)
        {
            CSharpParser          parser     = new CSharpParser();
            SyntaxTree            syntaxTree = parser.Parse(csharp);
            CodeDomConvertVisitor visitor    = new CodeDomConvertVisitor();
            var codeObject = syntaxTree.AcceptVisitor(visitor);

            var stringWriter       = new StringWriter();
            var powerShellProvider = new PowerShellCodeDomProvider();

            powerShellProvider.GenerateCodeFromCompileUnit(codeObject as CodeCompileUnit, stringWriter, new CodeGeneratorOptions());

            return(stringWriter.ToString());
        }
예제 #3
0
        private static string CSharpToPowerShell(string csharp)
        {
            CSharpParser parser = new CSharpParser();
            SyntaxTree syntaxTree = parser.Parse(csharp);
            CodeDomConvertVisitor visitor = new CodeDomConvertVisitor();
            var codeObject = syntaxTree.AcceptVisitor(visitor);

            var stringWriter = new StringWriter();
            var powerShellProvider = new PowerShellCodeDomProvider();
            powerShellProvider.GenerateCodeFromCompileUnit(codeObject as CodeCompileUnit, stringWriter, new CodeGeneratorOptions());

            return stringWriter.ToString();
        }