These mainstream NASA explanations are becoming tiresome.
Asteroids are rocks just like comets... not spewing water — just dust, protons, hydroxyl ions by electrical discharge, not solar heating.
https://www.youtube.com/watch?v=bRtsgVagQ9E&t=353s
Not really. Comets are mostly water (as observed by the Rosetta mission) and the asteroid Ceres has spectral features (as observed by the Dawn mission) typical of class "C" meteorites which are up to 30% water by mass. Many other asteroids share these spectral features.
Problem is, water is not stable on the surface of an asteroid at 3 AU. This means that any water on the surface of an asteroid or burnt out comet will have sublimated off long ago and that the water that remains is under a layer of surface dust. When a meteor hits the asteroid it can expose and vaporize the sub-surface water. Over many years, as the asteroid orbits, the sun can shine down into normally shaded parts meteor craters sublimating off more water until dust ultimately covers over the ice deposit.