如何以中等信任从 ASP.NET 中的 bin 文件夹加载文件
Posted
技术标签:
【中文标题】如何以中等信任从 ASP.NET 中的 bin 文件夹加载文件【英文标题】:How do I load a file from bin folder in ASP.NET in medium trust 【发布时间】:2011-02-24 21:54:23 【问题描述】:我需要从 ASP.NET 的 bin 文件夹中加载一个 XML 文件(MVC,这不算数)。我无法获取 bin 文件夹路径,也无法加载文件。我需要提供以下方法:
using(var file = System.IO.File.OpenRead(/* something */))
【问题讨论】:
【参考方案1】:好吧..在中等信任下,我能做的只有这样:
var binFolderPath = Server.MapPath("bin");
然后
Path.Combine(binFolderPath, "myConfigFile.xml");
【讨论】:
【参考方案2】:由于某些原因,默认情况下,您的 IIS 似乎不允许访问您的 bin 文件夹。这可能是从您的虚拟目录上方的父站点继承的。无论如何,请参阅此链接关于具有中等信任度的 FileIO:
http://msdn.microsoft.com/en-us/library/ms998341
您可能需要在 web.config 中添加一个部分,以提供对 AppDir 的特定访问权限,以覆盖父站点/虚拟目录中的设置。
<IPermission
class="FileIOPermission"
version="1"
Read="$AppDir$"
Write="$AppDir$"
Append="$AppDir$"
PathDiscovery="$AppDir$"
/>
【讨论】:
以上是关于如何以中等信任从 ASP.NET 中的 bin 文件夹加载文件的主要内容,如果未能解决你的问题,请参考以下文章