属性Get v方法的性能

Tom*_*Tom 10 c# oop

我有一个包含方法集合的类,我想知道使用方法对属性是否有任何性能加值?

有些方法相当复杂,但基本上返回IEnumerable对象集合,而其他方法则是简单的return values.Where(x => x.property == "comparison")Linq查询.

例子

方法:

public IEnumerable<PenDataRow> ActivePens() => Pens.Where(x => x.Status == "Active");
Run Code Online (Sandbox Code Playgroud)

属性:

public IEnumerable<PenDataRow> ActivePens => Pens.Where(x => x.Status == "Active");
Run Code Online (Sandbox Code Playgroud)

将它们标记为属性或方法会更好吗?

Jon*_*Jon 16

属性作为引擎下的方法实现,因此绝对没有性能差异.在属性和方法之间进行选择准则是语义的.