I was just wondering if it's a best practice to throw errors on validation and logic like the one below. I am catching these in my OnException method in my controller and sending it back to the client via Ajax as JSON. Is throwing exceptions like this ok?
public void Update(EditTeacherModel model)
        {
            var entity = _teachersRepository.FindBy(model.Id);
            if(entity == null)
                throw new NatGeoNotFoundException("Teacher");
        }