这只是为了满足我的好奇心。其中一项与另一项相比有什么区别或优势
public static void Save(Guid id, int a, string b)
{
//Save a and b to the database using PK id
}
结束:
Guid ID {get; set;}
int A {get; set;}
string B {get ;set;}
public void Save()
{
//Save A and B to the database using PK ID
}
编辑: 好的一些上下文:Web UI 将 JSON 传递给静态页面方法。 Page Method 解析 JSON 并将新变量传递给其他 DLL 中的静态类。然后使用 Entity Framework 来更新数据库。这样可以吗?
最佳答案
我绝对更喜欢实例方法而不是静态方法。原因是静态方法意味着您必须将全局可变状态引入系统中。为了发挥作用,静态方法需要访问某种数据库连接并静态地执行此操作。
应尽可能避免全局可变状态。这是一个迫在眉睫的错误农场,并阻碍 future 对代码库的更改(例如引入多个线程)。
关于c# - 对于简单函数来说,静态相对于非静态的任何优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15283071/