I am calling a method from a property. I have to pass property name as attribute of that method. My Property is
string lcl_name = string.Empty;
public string Name
{
get { return lcl_name; }
set
{
if (lcl_name != value)
{
lcl_name = value;
Foo_Method(GetCorrectPropertyName(MethodBase.GetCurrentMethod().Name));
}
}
}
and the method is
public string GetCorrectPropertyName(string propertyName)
{
return propertyName.StartsWith("set_") || propertyName.StartsWith("get_") ?
propertyName.Substring(4) : string.Empty;
}
My seniors say that i should not call Reflection and pass direct string to method this way
Foo_Method("Name");
but in that case since it would be hardcoded and if property name is changed, then method call have to be changed accordingly.
So my question is which one of them would be better in terms of efficiency? Is there something else that my seniors are seeing to which I am oblivious to?