我有一个MVC项目,它将使用telerik报告V8.0.14.255显示一些报告 在本地环境中,每一个都工作正常,但当我在托管环境中部署它时,此错误返回 访问路径' C:\ Windows \ TEMP \ ReportService'被拒绝。
我尝试更改缓存提供程序,但同样的错误一直返回(我尝试过内存,隔离存储和文件)
<section name="Telerik.Reporting"
type="Telerik.Reporting.Configuration.ReportingConfigurationSection, Telerik.Reporting, Version=8.0.14.225, Culture=neutral, PublicKeyToken=a9d7983dfcc261be"
allowLocation="true"
allowDefinition="Everywhere"/>
...
<Telerik.Reporting>
<Cache provider="IsolatedStorage"/>
</Telerik.Reporting>
请解决此问题的任何建议解决方案
答案 0 :(得分:1)
我们遇到了同样的问题,因此我们使用了明确指定的文件夹。
FileStorage
类有一个接受文件夹路径的构造函数。我们在磁盘上明确创建了此文件夹,并为此文件夹分配了必要的权限,以便运行我们的应用程序的帐户可以访问该文件夹。
然后我们将此文件夹路径传递给构造函数。
public class ReportsController : Telerik.Reporting.Services.WebApi.ReportsControllerBase
{
public ReportsController()
{
var tempFolder = ConfigurationManager.AppSettings["WebsiteTemporaryFolder]; // We set this in web.config
this.ReportServiceConfiguration = new Telerik.Reporting.Services.ReportServiceConfiguration
{
HostAppId = "TelerikReportsService",
ReportResolver = new ReportResolver(), // Custom class, not included in this example
Storage = new Telerik.Reporting.Cache.File.FileStorage(tempFolder)
};
}
}
我们对确切地赋予文件夹权限的帐户感到困惑。
我们的网站以特定帐户名称(CmsDemonstration
)运行。我们向用户CmsDemonstration
提供了完全控制权限,但在我们还为用户组IIS_IUSRS
分配了权限之后,它才能生效。
答案 1 :(得分:0)
您是否尝试过/可以更改ReportService文件夹的权限?或者包含文件夹?