我在这种情况下使用静态字段,因为我认为在每次请求时重新创建对象都很耗时。
private static AnalysedCompanies db = new AnalysedCompanies();
public class AnalysedCompanies:DbContext
{
...
}
我首先使用实体框架代码。
比我有通过db对象从数据库保存和加载数据的方法。 静态db对象是否会导致瓶颈?这是正确的做法吗?
答案 0 :(得分:2)
在ASP.net Web应用程序中,静态由所有用户共享,所以是的,这非常糟糕,因为这意味着用户A可能会看到/修改用户B看到的数据并导致各种令人头疼的问题。
静态数据适用于静态数据,即a)为每个人共享的数据,b)未被用户修改的数据(因为更改对所有其他用户是全局的)。我确实使用静态功能来处理系统配置或可以安全共享的对象。
我认为主要问题是:“我认为这很耗时” - 不要猜测,衡量。有很多可用于.net的分析器。如果您遇到性能问题,请测量一下是否确实存在问题然后采取行动。