.NET Instrumentation - Сбой вызова функции для пользовательской сборки - Веб-приложения Azure

Я развернул свой профилировщик инструментария.NET в веб-приложениях Azure через Visual Studio 2012. Мой профилировщик выполняет инструментирование байт-кода, как показано ниже,

FunctionA()
{
   --> Injected C# function Call 
   functionA's body
   -->Injected C# function Call
}

Внедренный вызов функции находится в отдельной сборке DLL. В физической коробке сборка будет добавлена ​​в GAC. Но в Azure он будет находиться в папке в папке веб-приложения, которая будет проверяться в файле web.config.

Используя DefineAssemblyRef из IMetaDataAssemblyEmit, я определяю сборку и ее функцию в каждом модуле, который загружается в процесс. Проблема в том, что введенный вызов функции работает только для функций модулей веб-приложения..! Другие модули, такие как System.Web.dll или System.Data.dll, не могут вызвать функцию, из-за чего веб-приложение Azure не удалось загрузить с ошибкой 502.

Вскоре внедрение в модули, отличные от веб-приложения, становится неудачным. Я думаю, это проблема безопасности при загрузке пользовательской сборки, и я попытался установить [assembly: System.Security.AllowPartiallyTrustedCallers] а также PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")] и некоторые другие атрибуты безопасности тоже.. ни один не помог.. Как сделать эту вспомогательную сборку для загрузки модулями.Net.? Есть ли какие-то другие специфические атрибуты безопасности, которые мне нужно установить для сборки, чтобы загрузить..?

0 ответов

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