我有一个Web应用程序使用代理来调用在从一个AS400返回的数据,像我们公司相关的不同销售区域WCF服务的操作,不同的店,我们在外地,等有出这些销售地区和商店不会经常更改,商店只能每年添加两次,而地区在一两年内也一样。WCF InstanceContextMode
我想我的困惑在于InstanceContextMode。当代理客户端调用GetRegions()或GetStoresForRegion(int regionNumber)时,我只返回“Regions”和“Stores”列表
如果我将InstanceContextMode设置为单个,并且已将区域和存储初始化并填充为在任何服务操作呼叫之前,这会以任何方式提供帮助吗?基本上现在,它在每次通话时都进行数据库查询,我不认为有这种需要。
因此,用户登录到Web应用程序 - > Web应用程序页面 - >必须加载下拉区域 - > Web开发人员调用代理来获取区域...但是,当每个用户使用Web应用程序时都会发生这种情况基本上每次用户访问Web应用程序,代理都会调用数据库,我相信这是愚蠢的,并且是我设置服务操作的错误,还是我完全误解了某些内容?
更新 - 服务是IIS托管,所以这整个问题可能是没有实际意义
InstanceContextMode =多重不存在,我想你的意思ConcurrencyMode.Multiple – 2010-11-17 13:46:23