Ao criar uma classe que possui métodos privados internos, geralmente para reduzir a duplicação de código, que não exige o uso de nenhum campo de instância, existem vantagens de desempenho ou memória em declarar o método como estático?
Exemplo:
foreach (XmlElement element in xmlDoc.DocumentElement.SelectNodes("sample"))
{
string first = GetInnerXml(element, ".//first");
string second = GetInnerXml(element, ".//second");
string third = GetInnerXml(element, ".//third");
}
...
private static string GetInnerXml(XmlElement element, string nodeName)
{
return GetInnerXml(element, nodeName, null);
}
private static string GetInnerXml(XmlElement element, string nodeName, string defaultValue)
{
XmlNode node = element.SelectSingleNode(nodeName);
return node == null ? defaultValue : node.InnerXml;
}
Existe alguma vantagem em declarar os métodos GetInnerXml () como estáticos? Nenhuma resposta de opinião, por favor, tenho uma opinião.