Не удается получить доступ к моей сборке в GAC при включенном LegacyCasmodel - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть вспомогательная сборка dll, разработанная с использованием C #, которую я вызываю из моего веб-приложения во время транзакции.

Мне нужно, чтобы мое веб-приложение имело полное доверие, и я хотел включить в нем legacyCasModel, поэтому я добавил следующие строки в web.config приложения

<trust level="Full" legacyCasModel="true" />

C # dll загружалась из GAC без каких-либо проблем, и я мог вызывать функцию сборки до тех пор, пока я не добавил этот тег доверия в web.config.

После добавления legacyCasModel = "true", запрос к веб-приложению не выполняется, и в журналах событий возникло исключение как

Не удалось инициализировать домен приложения: / LM / W3SVC / 2 / ROOT

Исключение: System.IO.FileLoadException

Сообщение: при загрузке этой сборки будет получен другой набор грантов. из других случаев. (Исключение из HRESULT: 0x80131401)

StackTrace: в System.Web.Configuration.HttpConfigurationSystem.EnsureInit (IConfigMapPath configMapPath, Boolean listenToFileChanges, Boolean initComplete)
в System.Web.Hosting.HostingEnvironment.Initialize (ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, исключение appDomainCreationException) в System.Web.Hosting.HostingEnvironment.Initialize (ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel) в System.Web.Hosting.HostingEnvironment.Initialize (ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel) в System.Web.Hosting.ApplicationManager.CreateAppDomainWithHostingEnvironment (String appId, IApplicationHost appHost, HostingEnvironmentParameters хостингПараметры) на System.Web.Hosting.ApplicationManager.CreateAppDomainWithHostingEnvironmentAndReportErrors (String appId, IApplicationHost appHost, HostingEnvironmentParameters hostingParameters)

Если я закомментирую тела функций в сборке и просто return; элемент управления, исключение не происходит. Если какая-либо из функций в сборке имеет классы .Net Framework, такие как System.Web.HttpContext, возникает исключение.

Как я могу устранить эту ошибку, не отключая legacyCasModel? Должен ли я реализовать какие-либо атрибуты безопасности для моей сборки?

Примечание. Моя сборка установлена ​​в GAC с AnyCPU, скомпилирована .Net 3.5. Он имеет цифровую подпись с дижикертом, но в свидетельстве отсутствует сертификат x509 (имеет ли это значение ??)

...