Subsonic T4 TextTemplatingService Исключение на VS 2005 - PullRequest
0 голосов
/ 02 декабря 2010

У меня есть веб-приложение VS2005. Я использую шаблоны активных записей MySQL и прекрасно работает в VS2008, однако я получаю эту ошибку:

Custom tool error: An Exception was thrown while running the transformation code. The process cannot continue.  The following Exception was thrown:
System.Runtime.Serialization.SerializationException: Type 'Microsoft.VisualStudio.TextTemplating.VSHost.TextTemplatingService' in Assembly 'Microsoft.VisualStudio.TextTemplating.VSHost, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' is not marked as serializable.

Просмотр подробностей исключений: http://pastebin.com/rF8iQJW2

У меня установлены следующие пакеты для работы с vs2005:

http://goo.gl/uINkV Инструментарий автоматизации навигации для Visual Studio 2005 - выпуск за февраль 2008 года

http://goo.gl/OEUNPРасширения Guidance Automation - февраль 2008 г., выпуск

Ответы [ 2 ]

0 голосов
/ 04 января 2013

Предыдущий ответ неверен.Система T4 теперь работает вне процесса и устанавливает канал Ipc обратно к хосту.Этот транспортный канал (основанный на удаленном взаимодействии) использует двоичный сериализатор и не может транспортировать Microsoft.VisualStudio.TextTemplating.VSHost.TextTemplatingService по этому каналу, поскольку он не помечен как сериализуемый, в точности как говорится в сообщении об исключении.

КстатиВы можете получить доступ к этому сервису, изменив директиву шаблона hostspecific = "true" и перейдя к свойству "Host".

Есть также некоторые части EnvDTE.DTE, к которым нельзя получить доступ через шаблоны T4 длята же причина (например, DTE.Windows или DTE.WindowConfiguration).

0 голосов
/ 07 декабря 2010

Subsonic 3.0 не работает для VS2005, так как требует .NET Framework 3.5

...