private void UpdateNamespace() { try { if (!File.Exists(CodeFile)) { NameSpace = Path.GetFileName(Folder); return; } using (var file = File.Open(CodeFile, FileMode.Open)) { var streamReader = new StreamReader(file, Encoding.UTF8); var buffer = new char[10000]; var count = streamReader.ReadBlock(buffer, 0, buffer.Length); var str = new string(buffer.Take(count).ToArray()); const string ns = "namespace "; if (!str.Contains(ns)) { return; } var afterNs = str.Split(new[] { ns }, 2, StringSplitOptions.None).Last(); NameSpace = new string(afterNs.TakeWhile(c => Char.IsLetterOrDigit(c) || c == '.').ToArray()); } EventHelper.Raise(ref NameSpaceUpdated, this, EventArgs.Empty); } catch (Exception exception) { _dialogHelper.Exception(exception); } }
private void Install() { Busy = true; var connectionString = UseCustomConnectionString ? CustomConnectionString : ProjectConnectionString; try { var proc = new ProcessStartInfo { FileName = string.Format("{0}.exe", PHmiConstants.PHmiServiceName), Arguments = "--i " + connectionString }; Process.Start(proc); _actionHelper.Dispatch(() => { View.DialogResult = true; }); } catch (Win32Exception) { _actionHelper.Dispatch(() => { View.DialogResult = false; }); } catch (Exception exception) { _dialogHelper.Exception(exception, View); } finally { Busy = false; } }