How can I rewrite he following code using C#3.0 automatic properties?
private int _myValue;
public int MyProperty
{
get { return _myValue;}
set
{
if (value > 0)
{
_myValue = value;
}
}
}
If it is not possible, What is the alternative?
No, automatically implemented properties have no declared implementation. Any extended implementation that you wish to provide would have to use a regular property.
I am not sure what you are looking for in terms of an alternative - the syntax you have used in your question is the alternative.
Answer: You can't do this with automatic properties.
来源:https://stackoverflow.com/questions/1620156/c3-0-automatic-properties-with-extra-logic