static void Main(string[] args) { if (ConfigurationManager.ConnectionStrings["umbracoDbDSN"] == null) { var path = new FileInfo(Assembly.GetExecutingAssembly().Location).Directory.FullName; var webConfigPath = Path.Combine(path, "..", "Web.config"); var domain = AppDomain.CreateDomain( "umbraco-domain", AppDomain.CurrentDomain.Evidence, new AppDomainSetup { ConfigurationFile = webConfigPath }); domain.AssemblyResolve += AssemblyResolveHacks; var assemblies = AppDomain.CurrentDomain.GetAssemblies(); foreach (var assembly in assemblies) { try { domain.Load(assembly.FullName); } catch (FileNotFoundException) { //Console.WriteLine("Failed to load {0}", assembly.FullName); } } domain.SetData("DataDirectory", Path.Combine(path, "..", "App_Data")); domain.SetData(".appDomain", "From Domain"); domain.SetData(".appId", "From Domain"); Thread.GetDomain().SetData(".appDomain", "From Thread"); Thread.GetDomain().SetData(".appId", "From Thread"); var thisAssembly = new FileInfo(Assembly.GetExecutingAssembly().Location); domain.ExecuteAssembly(thisAssembly.FullName, args); } else { using (var host = new UmbracoHost(Console.In, Console.Out)) { UmbracoHost.Current = host; if (args.Any()) { host.Run(args).Wait(); } else { host.Run().Wait(); } } } }
public void CanParseCommands(string input, string[] expected) { var actual = UmbracoHost.ParseCommandline(input); Assert.Equal(expected, actual); }