Каковы наиболее распространенные, типичные вещи ПОСТАРАТЬСЯ НЕ кодировать в мое приложение ASP.NET для него для выполнения под Средним Доверием на общем хосте?

Подобные проблемы часто возникали с веб-сайтами. Обычно помогает Element.scrollIntoView () . Метод Element.scrollIntoView () прокручивает элемент, для которого он вызывается, в видимую область окна браузера.

Вы можете привязать его к onFocus событию входа.

 

8
задан Corey Trager 9 November 2008 в 00:55
поделиться

6 ответов

Вот то, как узнать об и решить доверительные вопросы.

1) Ищите свой Windows\Microsoft.NET\Framework [ВАША ВЕРСИЯ] \CONFIG папки для файлов:

  • web.config (это - корневой файл конфигурации),
  • web_mediumtrust.config
  • web_hightrust.config

2) Измените web.config для высказывания

<trust level="Medium" originUrl="" />

3) Попробуйте свое приложение ASP.NET. Шахта перестала работать с ошибкой разрешения.

4) Разность web_mediumtrust.config и web_hightrust.config в различном инструменте, как WinMerge.

5) Настройки копии от верхнего уровня до носителя по одному и видят, как они влияют на Ваше приложение. В моем случае сообщение об ошибке упомянуло ConfigurationPermission, таким образом, было легко диагностировать.

Если можно придавить точные строки в web_mediumtrust.config файле, которые блокируют Вас, то, возможно, можно совместно использовать это с хостинговой компанией и иметь лучший шанс разработки вещей.

Больше документации здесь:
http://msdn.microsoft.com/en-us/library/aa302425.aspx

@Oli, мое приложение, которое IS разместила в GoDaddy и я должен был сделать некоторые обходные решения в коде, когда я начал использовать Lucene.NET. Я должен был изменить исходный код Lucene.NET для не использования GetTempPath и Системы. IO.FileInfo.

4
ответ дан 5 December 2019 в 17:42
поделиться

Кто может быть уверен? Вот почему необходимо разработать с доверительным уровнем среднего набора в web.config.

 <trust level="Full|High|Medium|Low|Minimal" />
3
ответ дан 5 December 2019 в 17:42
поделиться

Большинство общих хостов не использует истинную среднюю доверительную среду, потому что она ограничивает некоторые вещи, которые просто слишком жизненно важны. Другие ограничивают некоторые дополнительные настройки по своим собственным анальным причинам.

Лучшая вещь, которую можно сделать, спрашивает хост, какие настройки они используют для ASPNET. Попросите спецификации доверительного уровня, который они используют. Узнайте пределы памяти. После того как у Вас есть те детали, необходимо смочь копировать сценарий на местном уровне.

Если они не скажут Вам, просто установить Ваше приложение для выполнения в среднем доверии, но оно (очевидно), будет не обязательно работать, если они будут использовать измененный доверительный уровень.

Вот некоторая информация об установке доверительных уровней в IIS.

В целом единственная проблема, с которой я столкнулся: при продвижении блоков удостоверьтесь, что Вы позволяете запросы, которым частично доверяют (это - метатег блока), иначе, Вы не сможете использовать их.

Вот извлечение Средней Доверительной информационной страницы GoDaddy:

Приложения, работающие под Средним доверительным уровнем, не имеют никакого доступа к реестру, никакого доступа к журналу событий Windows, и не могут использовать ReflectionPermission (но может использовать Отражение). Такие приложения могут связаться только с определенным диапазоном сетевых адресов, и доступ к файловой системе ограничен иерархией виртуального каталога приложения.

Используя Средний доверительный уровень препятствует тому, чтобы приложения получили доступ к совместно использованным системным ресурсам, и устраняет потенциал для интерференции приложения. Добавление OleDbPermission и OdbcPermission позволяет приложениям использовать тех поставщиков данных для доступа к базам данных. WebPermission изменяется для разрешения исходящего http и трафика HTTPS.

Это не могло бы отобразиться точно на то, что необходимо будет работать вокруг с хостом (если Вы не с GoDaddy), но это - типичный пример.

3
ответ дан 5 December 2019 в 17:42
поделиться

Удостоверьтесь любые сторонние библиотеки/платформы (Замок приходит на ум), сборка (или может быть создан) в среднем доверии.

0
ответ дан 5 December 2019 в 17:42
поделиться

system.runtime.serialization библиотека абсолютно недоступна в среднем доверии.

Я кодировал вокруг этого для json сериализации/десериализации и узнал твердый путь. Потребовалась неделя, чтобы заставить партнера подтверждать, что средние доверительные ограничения были виноваты. Я закончил тем, что переключил хостинговые компании в результате.

0
ответ дан 5 December 2019 в 17:42
поделиться

В среднем доверии, по крайней мере, в моем хосте, вызовы P/INVOKE недоступны, т.е. использование [DLLImport] назвать COM-компонент не собирается работать.

- Edoode

0
ответ дан 5 December 2019 в 17:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: