static void Main(string[] args) { var client = new RoslynCodeConverterClientLibrary.Proxies.RoslynCodeConverter(); //ConvertResponse result = client.Converter.Post(new ConvertRequest() //{ // Code = "public class Test {}", // RequestedConversion = SupportedConversions.CSharp2Vb //}); ConvertResponse result = client.Converter.Post(new ConvertRequest() { Code = "Public Class Test\r\nEnd Class", RequestedConversion = SupportedConversions.Vb2CSharp }); if (true == result.ConversionOk) { Console.WriteLine("Conversion succeeded"); Console.WriteLine(result.ConvertedCode); } else { Console.WriteLine("Error converting: " + result.ErrorMessage); } Console.Read(); }
private async void runConversion_Click(object sender, RoutedEventArgs e) { outputCode.Text = ""; string conversionType = SupportedConversions.CSharp2Vb; if (cs2vbnetRbtn.IsChecked == true) { outputCode.SyntaxHighlighting = vbDefinition; } else { outputCode.SyntaxHighlighting = csharpDefinition; conversionType = SupportedConversions.Vb2CSharp; } string code = inputCode.Text; converterCallInflight.Visibility = Visibility.Visible; runConversion.IsEnabled = false; try { var client = new RoslynCodeConverterClientLibrary.Proxies.RoslynCodeConverter(); ConvertResponse result = await client.Converter.PostAsync(new ConvertRequest() { Code = code, RequestedConversion = conversionType }); if (true == result.ConversionOk) { outputCode.Text = result.ConvertedCode; } else { outputCode.SyntaxHighlighting = null; outputCode.Text = result.ErrorMessage; } } catch (Exception ex) { outputCode.SyntaxHighlighting = null; outputCode.Text = ex.Message; } converterCallInflight.Visibility = Visibility.Collapsed; runConversion.IsEnabled = true; }
static bool FileConvertedOk(string file, RoslynCodeConverterClientLibrary.Proxies.RoslynCodeConverter client) { string code = System.IO.File.ReadAllText(file); if (String.IsNullOrWhiteSpace(code)) { return(false); } ConvertResponse result = client.Converter.Post(new ConvertRequest() { Code = code, RequestedConversion = "cs2vbnet" }); if (true != result.ConversionOk) { Console.WriteLine("ERROR:" + file); Console.WriteLine(result.ErrorMessage); return(false); } return(true); }
// Adapted from: https://msdn.microsoft.com/en-us/library/bb513869.aspx public static int TraverseTree(string root) { var client = new RoslynCodeConverterClientLibrary.Proxies.RoslynCodeConverter(); var dirs = new Stack <string>(20); int okFiles = 0; if (!System.IO.Directory.Exists(root)) { Console.Write("Directory does not exist"); return(okFiles); } dirs.Push(root); while (dirs.Count > 0) { string currentDir = dirs.Pop(); string[] subDirs; try { subDirs = System.IO.Directory.GetDirectories(currentDir); } catch (Exception ex) { continue; } string[] files = null; try { files = System.IO.Directory.GetFiles(currentDir, "*.cs"); } catch (Exception ex) { continue; } foreach (string file in files) { try { if (FileConvertedOk(file, client)) { okFiles++; } } catch (Exception ex) { Console.WriteLine($"INFO: Exception when trying to run conversion for {file}, {ex.Message}"); continue; } } // Push the subdirectories onto the stack for traversal. foreach (string str in subDirs) { dirs.Push(str); } } return(okFiles); }