Perhaps this is a silly question, however, I am resonable new to C# (more from a Java background) and have got confused between different examples I have seen regarding getters and setters of a property.
In some situations the code looks like this:
private string _something;
public string Something
{
get { return _something; }
set { _something = value; }
}
However, in other examples they do not use this backing memeber and so it is more like this:
public string Something { get; set; }
I do not really see the benefit of using these backing variables (_something) unless of course you have some complex logic regarding the setting of the variables.
I am writing my program using the latter approach, but wanted to check I have not missed anything.
Can someone please explain simply why people chose to do the former? Is it more 'good practice'?
Thanks a lot!
One good reason to use the first syntax is for use with MVVM architectures where your properties are bound to front end elements.
Something like:
private string _something;
public string Something
{
get { return _something; }
set {
_something = value;
OnNotifyPropertyChanged("Something");
}
}
That would alert your front end that its bound property has been changed and it has to update.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With