Непосредственное окно

Мы используем fluentmigrator, и он хочет длинный номер миграции.

Обычно я могу просто открыть окно и введите

System.DateTime.Now.ToString("yyyMMddhhmmss");

Но иногда он скажет:

Выражение не может быть оценено в режиме конструктора.

Поэтому я начинаю отладку, снова запускаю команду и получаю эту ошибку:

Выражение не может быть оценено в режиме выполнения.

Отредактировано, чтобы добавить

Если я начну отладку и нажму паузу и введу команду, я получаю

Невозможно оценить выражение, поскольку текущий поток находится в режиме ожидания, ожидания или соединения

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

Это в Visual Studio 2010 Pro.

Бонусные баллы, если вы можете сказать мне, как сделать это как шаблон класса или, возможно, что-то типа PowerShell?

Я попробовал ответ в " Немедленном окне": "Выражение не может быть оценено...", и выбор проекта не работает. Я не получаю> в непосредственном окне, и если я помещаю это перед командой, я получаю

Команда "..." недействительна.

Отредактировано, чтобы добавить, я создал этот гист, чтобы сделать то, что я хотел.

https://gist.github.com/9ad816c2b8e56b57ef79

по сути, это команда powershell для создания шаблона aC# с заполненным дерьмом.

3 ответа

Решение

Почему бы просто не использовать PowerShell:

PS> [DateTime]::Now.ToString("yyyMMddhhmmss");
20120228043351

Я не пользователь Visual Studio, но вот как вы можете получить значение с помощью командлета PowerShell:

Get-Date -Format yyyMMddhhmmss

Вам необходимо выполнить его в третьем режиме - режиме отладки (приостановлен в отладчике).

Другие вопросы по тегам