我的网络应用程序写入几个文件夹(日志,上传等),我总是通过我的托管服务提供商手动设置这些权限.
我想创建一个在新安装上执行此操作的安装脚本.这是否可以在中等信托下进行?
我甚至无法调用File.GetAccessControl,更不用说File.SetAccessControl了,但无论如何我都不需要这样的"大锤子".我只是想做ISP(在这种情况下是GoDaddy)让我通过管理控制台做的事情.
我相信PHP能够做到这一点,如果可能的话,我愿意为此目的考虑一个PHP页面.
我有一个场景,我的ASP.NET Web应用程序的用户提交由文本信息和图像组成的推荐.提交过程包括以下步骤:
这个问题是我不希望在用户实际确认之前将上传的图像存储在数据库中.相反,我将它们存储为临时文件,并在最终确认后将它们放入DB中.
由于我还希望我的应用程序以中等信任的方式运行,因此我只对应用程序目录具有写权限,而且不在外面.我甚至想将ASPNET/NETWORK SERVICE用户的写权限限制在〜/ App_Data文件夹中.我的方案的问题是,一旦在此文件夹中创建了临时文件,应用程序池就会被回收,我不希望每个提示都提交.
您如何建议我保留这些临时文件?如果我更新文件,则不会重新启动池 - 仅在创建或重命名时.但我不认为我可以将整个图像存储在一个文件中供所有用户使用.你怎么看?
更新:我应该注意到我正在使用第三方控件进行上传.它允许我在上传后以编程方式访问文件内容的二进制流,但是在第二次回发后我不能保留它(第一步和回发实际上进行上传).
我正在尝试配置nhibernate 2.1.2以中等信任运行,没有任何运气.我尝试过将这些建议用于中等信任并预先生成代理.
然后我尝试删除对延迟加载的所有引用,在所有类和包上设置default-lazy ="false".然而,这引发了一个异常,要求我配置proxyfactory.factory_class
这些方法都不起作用,因为它们不断抛出一般安全异常或抛出库,不允许AllowPartiallyTrustedCallers.
如果我想以中等信任的方式运行,我是否使用了错误的NHibernate版本?
是否有一组特定的二进制文件或源代码,我应该使用它们.
更新:
我设法使用carl 提到的城堡项目邮件列表中提到的步骤来使用它.除此之外,我还必须禁用为castle和nhibernate库生成调试信息.我写了一个快速指南,介绍了我可以在这里找到的步骤
我需要从ASP.NET中的bin文件夹加载一个xML文件(MVC,而不是它会计算).我无法获取bin文件夹路径,否则加载文件..我需要提供以下方法:
using(var file = System.IO.File.OpenRead(/* something */))
{
}
Run Code Online (Sandbox Code Playgroud) NHibernate 2和\或Fluent Nhibernate是否会在中等信任环境中工作.如果没有,是否有任何解决方法?
场景:我遇到了一个以中等信任方式运行的共享托管服务提供商,并且拥有.Net framework 3.5
我使用Nhibernate为我的网站构建了一个数据层,但却发现它无法在中等信任上运行.
我在互联网上找到了一些指南来解释下载Castle.Core和NHibernate来源并重建它们允许部分信任,但我遇到了各种问题(所有来源都更新到.net 4.0,虽然我知道我可以浏览旧提交的git repos,好像在大海捞针找到了我.)
我现在需要的是一个支持中等信任和POCO的ORM(因此,它们与T4生成的类紧密耦合,因此排除了EF 1.0和Linq到Sql).
我也从使用Lightspeed ORM的高级地方获得了"NO",因为免费版本限制为8个表,并且架构可能会增长.
我知道我问了很多,但是如果有人知道已经构建的Nhibernate for 3.5版本可以以中等信任或有效的替代方式运行,我会非常高兴.
谢谢.
medium-trust ×6
asp.net ×3
nhibernate ×3
c# ×2
bin-folder ×1
castle ×1
file-io ×1
io ×1
orm ×1