2012-09-12 61 views
0

我正在嘗試更新以中等信任度運行的MVC3應用程序中的web.config中的appSetting。一旦我嘗試打電話,它就會失敗?無法在中等信任的Web.Config中編輯AppSetting?

var config = WebConfigurationManager.OpenWebConfiguration("~"); 

嘗試了其他變化,但他們似乎都拋出這個錯誤。

System.Security.Permissions.FileIOPermission, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089′ failed. 

任何人都知道如何做到中等信任?任何幫助將不勝感激。

回答

2

簡答:中等信託不可能。

長答案:web.config實際上從機器級web.configs繼承了一堆設置。因此,當您通過打開給定的.config文件訪問ConfigurationSettings類時,它是隻讀的(因爲這是系統允許您執行的操作),但在嘗試寫入時會拋出FileIO權限,因爲類具有在寫入新設置之前(取決於,其中設置了繼承層次結構中的設置),確定它們在調用堆棧的某個位置有權寫入正確的配置(文件夾,繼承的或機器級別)。 N.B.這意味着要在.NET4中修復......我記得在某處的Microsoft Connect網站上看​​到了一個鏈接。

摘要:使用XML/XSLT解析。

相關問題