Непосредственное окно
Мы используем 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
Вам необходимо выполнить его в третьем режиме - режиме отладки (приостановлен в отладчике).