相关疑难解决方法(0)

创建以"对象"类型操作的扩展方法是否会影响性能?

我有一组扩展方法,我经常用于各种UI任务.我通常将它们定义为运行类型object,即使在它们内部我通常将它们转换为字符串类型.

public static string FormatSomething(this object o)
{
     if( o != null )
     {
          string s = o.ToString();
          /// do the work and return something.
     }
     // return something else or empty string.

}
Run Code Online (Sandbox Code Playgroud)

我使用类型object而不是使用类型的主要原因string<%#Eval("Phone").ToString().FormatSomething()%>在我可以做的时候将自己保存在UI中<%#Eval("Phone").FormatSomething()%>.

那么,从性能的角度来看,创建所有扩展方法是否正常object,或者我应该根据扩展方法的作用将它们转换为string(或相关)类型?

c# extension-methods

27
推荐指数
1
解决办法
7146
查看次数

在运行时与扩展方法相关的开销是多少?(.净)

可能重复:
扩展方法性能

在一个CPU和/或内存访问限制的数据处理应用程序中,一行扩展方法的开销是否显着?它是否比普通函数调用更高,还是仅仅是编译器/ IDE抽象?例如,如果以下函数每秒被调用数千次,那么它是否会被告知:

public static void WriteElementString(this XmlTextWriter writer, string name, int data)
{
    writer.WriteElementString(name, data.ToString());
}
Run Code Online (Sandbox Code Playgroud)

.net extension-methods

8
推荐指数
1
解决办法
1464
查看次数

扩展方法:使用太多时的性能问题?

可能重复:
扩展方法性能

当我以任何方式使用扩展方法时,我会遇到性能问题吗?

举个例子:

假设我在类型字符串上有100个扩展方法,并且有一个具有50个字符串属性的业务对象.现在我创建了这个业务对象的集合,可能有500个项目?

字符串上的这些扩展方法对RAM,CPU,......有什么影响!

我真的很喜欢扩展方法,但我想知道它的用法是否存在限制.

.net c# performance extension-methods

8
推荐指数
2
解决办法
2963
查看次数

标签 统计

extension-methods ×3

.net ×2

c# ×2

performance ×1