我有一个带有一些静态列表的类.出于示范目的,我只会展示两个:public class Foo{public static readonly Listlong FirstList(EfEntities dbContext){return dbContext.SomeTable.Where(x = x == 1).ToList();}pu...
![](https://oss.womengda.net/imgfile/2310/1ER2F6394160-5Ia.jpg)
我有一个带有一些静态列表的类.出于示范目的,我只会展示两个:
public class Foo
{
public static readonly List<long> FirstList(EfEntities dbContext)
{
return dbContext.SomeTable.Where(x => x == 1).ToList();
}
public static readonly List<long> SecondList(EfEntities dbContext)
{
return dbContext.SomeTable.Where(x => x == 2).ToList();
}
}
我不是将数据库上下文传递给每个静态方法的忠实粉丝.你对不同的方法有什么建议吗?
解决方法:
不要让它静止.您需要返回这些列表的上下文.静态成员被设计为较少的上下文.所以基本上你想要的是将这些方法移动到类实例,并通过依赖注入或其他类型的工厂提供构造上下文.
坚持静力学的设计决定是什么?
一个糟糕的解决方法是将上下文一次传递给静态字段然后使用它,但这基本上就是你应该对类实例做的事情
沃梦达教程
本文标题为:c# – 将数据库上下文传递给静态方法
![](/xwassets/images/pre.png)
![](/xwassets/images/next.png)
猜你喜欢
- C# 索引器的使用教程 2023-04-15
- C#利用VS中插件打包并发布winfrom程序 2022-12-31
- C#设置文件权限的方法 2023-03-09
- DevExpress的DateEdit设置显示日期和时间的方法 2023-06-27
- C#线程委托实现原理及方法解析 2023-03-10
- unity实现简单贪吃蛇游戏 2023-02-16
- WPF实现窗体中的悬浮按钮 2023-01-06
- c# 通过wbemtest和WMI Code Cretor更加高效的访问WMI 2023-04-15
- C# 语言入门基础介绍 2023-05-11
- C#6.0中你可能不知道的新特性总结 2022-12-11