Как пользовательская активность WF4 может определить, что она находится в режиме разработки v. В режиме выполнения - PullRequest
1 голос
/ 12 мая 2010

У меня есть пользовательское действие WF4 с дизайнером (WPF). Я хотел бы иметь немного другое поведение в переопределении CacheMetaData в зависимости от того, находится ли Activity в режиме разработки или выполнения.

Редактировать: причины потребности. У нас есть проверка, которая должна искать данные из файла web.config (или одного из его включений). Во время выполнения мы можем использовать System.Configuration.ConfigurationManager, а во время разработки мне нужно использовать EnvDte для опроса структуры проекта.

Поскольку действие может быть отлажено, в любом случае оно может быть VS, поэтому я не могу проверить это.

Есть ли в WF4 сервис, по которому я могу позвонить, чтобы узнать, в каком режиме я нахожусь?

Ответы [ 3 ]

1 голос
/ 26 июня 2010

Одна вещь, которую вы могли бы сделать, - это фактически отделить время разработки от действия времени выполнения. Это то, что я делаю. Требуется немного работы и может быть излишним для ваших нужд. Проверьте это WF сообщение на форуме для более подробной информации.

1 голос
/ 13 мая 2010

Насколько я знаю, нет хорошего способа сделать это.

Вы можете проверить, используя имя процесса. Если это devenv, то вы находитесь в Visual Studio (если вы отлаживаете, это будет имя вашего проекта с тегом .vshost. Но поскольку дизайнер может быть размещен, это далеко не надежно.

0 голосов
/ 05 августа 2010

Если причиной этого требования является чисто проверка, не могли бы вы переместить логику проверки, требующую EnvDTE, в компонент конструктора, оставив только логику проверки времени выполнения в самом действии?

...