I'm following a tutorial series about MVC4 on PluralSight and the presenter sets all of the properties of all of his models as virtual. I haven't seen others do this and I was wondering if it is the right way to create models. And further, what is the reason to use the virtual keyword.
for example:
public class Video
{
    public virtual int Id { get; set; }
    public virtual string Title { get; set; }
    public virtual int Length { get; set; }
}
 
    