Can C# interface have properties?
Hereof, should interfaces have properties?
Yes, An interface should define properties when it really in need. There is a IUser interface that has defined a property "Name" then you can use it without worry about if the object didn't implement the property.
Also know, why do we need interfaces in C#?
First and foremost, interfaces in C# are a means to get around the lack of multiple inheritances in C#, meaning you cannot inherit from multiple classes but you can implement multiple interfaces. An interface is a contract between itself and any class that implements it.
interface allows a class to behave like multiple types, which is not possible without multiple inheritance of class. It also ensures that you follow programming to interface than implementation pattern, which eventually adds lot of flexibility in your system.