3

这更像是一个非技术问题。

我们打算将 OrganizationServiceContext 与 Linq 一起使用,而不是调用 OrganizationServiceProxy。

我的问题是:上下文的生命周期应该是多少?它应该为每个方法实例化一次,还是可以使用单例方法在 Web 应用程序的整个生命周期中保留它?

优点/缺点是什么?有什么建议吗?

提前致谢

4

2 回答 2

2

只是为了扩展 Gats 的答案,这是完全正确的,我们几乎为我们拥有的每个单独的方法创建了新的上下文对象。即使对于 Silverlight,我们知道我们一次只为一个用户运行,为了避免创建新的上下文对象,随时管理上下文中的内容也太痛苦了。

于 2011-06-06T14:20:46.087 回答
2

您永远不应该在 Web 应用程序的整个生命周期中保留数据上下文。应用程序生命周期在您的代码之外进行管理。

当其他用户同时保存时,保存更改也有一个痛苦的世界。数据上下文应始终仅在请求的生命周期内进行管理,并且运行保存更改不应在其他人正在处理的请求中保存点点滴滴。

如果要减少读取,请使用缓存。如果您想管理并发使用带有工作单元的事务。

于 2011-06-06T06:01:25.713 回答