У вас есть выбор. Проще всего было бы «отказаться» от новой модели безопасности.
<configuration>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true" />
</runtime>
</configuration>
ИЛИ (учитывая, что я не эксперт по безопасности .Net 4)
Редактировать: Отказ от модели безопасности .Net 4 ненадежен и его следует избегать
Вы можете отметить свой метод:
[SecuritySafeCritical]
, поскольку вы можете использовать это с кодом, предназначенным для частично доверенных абонентов.
К сожалению, у меня нет хорошей статьи, которую я могу отправить вам, мне пришлось выяснить это, как вы, исправив мой неработающий код. :)