我使用SQL Server Reporting Service的web services api在asp.net Web应用程序中使用ReportExecutionService代理呈现报告。
我的问题是:我应该在每次生成报告时创建ReportExecutionService代理的新实例,还是使用推荐方法的单例实例? (例如,出于性能原因等)。
答案 0 :(得分:2)
您要使用哪些wcf绑定?通常 - 您可以重用代理,在单用户单线程应用程序中,这是一个好主意。
但是单例在ASP.NET应用程序中是一个坏主意 - 代理本身并不是线程安全的。
因此,您可以在会话层创建代理并缓存它(一个会话=一个线程,因为我记得这可以在ASP.NET中配置)。