OnExit не входит через PostSharp в проект asp.net - PullRequest
2 голосов
/ 25 августа 2009

Я установил PostSharp, и он, кажется, работает, но я не получаю его при входе в OnExit (я зарегистрировал настройки, чтобы убедиться, что он работает) ...

Это немного сложно настроить с asp.net - или это только у меня ... Я использую новую версию 1.5

У меня в основном есть следующее в web.config, и мне пришлось добавить SearchPath, иначе он не может найти мои сборки

  <postsharp directory="C:\Program Files\PostSharp 1.5" trace="true">
   <parameters>
     <!--<add name="parameter-name" value="parameter-value"/>-->
   </parameters>
   <searchPath>
     <!-- Always add the binary folder to the search path. -->
     <add name="bin" value="~\bin"/>
   </searchPath>

 </postsharp>

Я установил трассировку, но что странно для меня, так это то, что она создается для временного каталога, может быть, это моя проблема, я не уверен ..., следовательно, я делаю F5 ... Можно ли назвать выходной каталог и выходной файл Как вы можете видеть, он редактирует DLL во временном каталоге, поэтому IIS больше не контролирует и не выполняет ее ???

Confused! : -)


C: \ Program Files \ PostSharp 1.5 \ postsharp.exe "/P:Output=C:\Windows\Microsoft.NET\Framework\v2.0.50727\ Временные файлы ASP.NET \ mysitemvc-1.2 \ c2087140 \ 8ac2dc93 \ postsharp \ App_Web_04ae3ewy.dll "" /P:IntermediateDirectory=C:\Windows\Microsoft.NET\Framework\v2.0.50727\ Временные файлы ASP.NET \ mysitemvc-1.2 \ c2087140 \ 8ac2dc93 \ postsharp "/ P: CleanIntermediate = False Р: ReferenceDirectory =. / P: SignAssembly = False / P: PrivateKeyLocation = / P: ResolvedReferences = "/ P: SearchPath = C: \ Исходный код \ Visual Studio 2008 \ Projects \ mysitemvc \ mysitemvc \ bin," / V / SkipAutoUpdate "C: \ Program Файлы \ PostSharp 1.5 \ Default.psproj "" C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Временные файлы ASP.NET \ mysitemvc-1.2 \ c2087140 \ 8ac2dc93 \ before-postsharp \ App_Web_04ae3ewy.dll "

PostSharp 1.5 [1.5.6.627] - Copyright (c) Gael Fraiteur, 2005-2009.

info PS0035: C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ ilasm.exe "C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Временные файлы ASP.NET \ mysitemvc-1.2 \ c2087140 \ 8ac2dc93 \ postsharp \ App_Web_04ae3ewy.il "/ QUIET / DLL / PDB" /RESOURCE=C:\Windows\Microsoft.NET\Framework\v2.0.50727\ Временные файлы ASP.NET \ mysitemvc-1.2 \ c2087140 \ posts22parp2 \ App_Web_04ae3ewy.res "" /OUTPUT=C:\Windows\Microsoft.NET\Framework\v2.0.50727\ Временные файлы ASP.NET \ mysitemvc-1.2 \ c2087140 \ 8ac2dc93 \ postsharp \ App_Web_04ae3ewy.dll "/ SUBS FLSST / = 1 / BASE = 18481152 / STACK = 1048576 / ALIGNMENT = 512 /MDV=v2.0.50727

1 Ответ

1 голос
/ 25 августа 2009

PostSharp.AspNet реализует IAssemblyPostProcessor. Путь передается ASP.NET. Что делает PostSharp, так это то, что он создает временный подкаталог в этом каталоге, передаваемый ASP.NET, записывает свои выходные данные, а затем копирует выходные данные обратно на вход.

Нет способа изменить этот механизм (и я все равно не вижу причин).

-gael

...