[英]Should OutputCacheProfiles (in webconfig) be accessible under a medium trust environment?
我正在嘗試在共享托管環境的MVC應用程序中使用DevTrends Donut Caching。
當我上傳應用程序時,出現以下錯誤:
System.Security.SecurityException:MvcDonutCaching沒有讀取web.config節“ OutputCacheSettingsSection”的權限。
主機提供商說,此限制是由於中等信任環境造成的。
盡管我對此知識不足以爭論,但是在中等信任下無法使用基本Web.Config設置似乎很奇怪/不合理。
另外,在此工作項的底部,從2012年開始,作者指出:
我添加了一些代碼,以允許在嚴格的中等信任環境中使用MvcDonutCaching
我應該能夠在中等信任環境中訪問這些設置嗎?
我在web.config中使用的緩存設置是這樣的:
<system.web>
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="CacheFor1Hour" duration="3600" varyByParam="none" />
<add name="RecacheOnUpdate" duration="2419200" varyByParam="*" />
<add name="Dashboard" duration="86400" varyByParam="*" varyByCustom="User" location="Server" />
</outputCacheProfiles>
</outputCacheSettings>
</caching>
</system.web>
好的,我在這里找到了答案: http : //mvcdonutcaching.codeplex.com/workitem/2466
因此,您似乎無法在嚴格的中型信任環境中做到這一點。 我希望我的托管公司在下面的引用中像“大多數托管公司” ... :-(
感謝您的全面描述。 我已經找到了問題所在。 因為您具有嚴格的中等信任環境,所以MvcDonutCaching無法從存儲緩存配置文件的web.config中訪問ConfigurationSection。 我已經對代碼進行了改進,以提供有意義的錯誤消息,但是如果沒有該權限,則無法使用緩存配置文件。 大多數托管環境會修改“中級信任”設置,以允許訪問配置部分,因此,如果您擁有服務器,則這是向您開放的一個選項。 否則,要使用MvcDonutCaching,您將需要避免緩存配置文件,並向屬性本身添加持續時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.