Как запустить WebDevServer из файла .sln, не открывая Visual Studio 2008 - PullRequest
3 голосов
/ 16 февраля 2010

Есть ли способ запустить WebDevServer (сервер Visual Web Development), передав файл .sln без фактического открытия Visual Studio 2008? Я являюсь разработчиком JavaScript и работаю в клиентском проекте, и я хочу сохранить накладные расходы памяти, используемые VS, и передать их нескольким браузерам для кросс-браузерного тестирования. Я не решаюсь с настройкой IIS (сервер Visual Web Dev настолько легок, как Кассини). Пожалуйста посоветуй. Спасибо!

Ответы [ 2 ]

1 голос
/ 17 марта 2010

Нет, вы не можете запустить webdev или любой другой сервер из .sln вне контекста Visual Studio.

Да, вы можете запустить webdev из командной строки, передав каталог вашего приложения, но вы можете найти CassiniDev весьма полезным в вашем рабочем процессе.

Он специально разработан для удовлетворения ваших требований.

1 голос
/ 01 марта 2010

Да, вы можете запустить свое приложение, не открывая Visual Studio из режима файловой системы. См. Приведенный ниже фрагмент кода, предоставленный для VS 2008.

string randomportnumber = string.Format("{0}", new Random().Next(0x3e9, 0x4e20));
string applicationpath = @"c:\work\yourwebapplication";

 Process process = new Process();
                process.StartInfo.FileName = "WebDev.WebServer.EXE"
                process.StartInfo.WorkingDirectory = @"C:\Program Files\Common Files\Microsoft Shared\DevServer\9.0\";
                process.StartInfo.Arguments = string.Format("/port:{0} /path:\"{1}\" /vpath:\"/{2}\"", randomportnumber, applicationpath, string.Empty);

                process.StartInfo.CreateNoWindow = true;
                process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

                process.Start();
                Thread.Sleep(new TimeSpan(0, 0, 10));

                process.StartInfo.CreateNoWindow = true;
                process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

                Process.Start(string.Format("http://localhost:{0}/default.aspx", randomportnumber));
...