DataTable dt = ds.tables ["put"]; ¿Por qué 'dt' es nulo? [duplicar]

Esta pregunta ya tiene una respuesta aquí:

¿Qué es una excepción NullReferenceException y cómo la soluciono? 31 respuestas
string sel = "select * from PUTIN";
DataSet ds = new DataSet();
DataTable dt = ds.Tables["put"];
DataRow row = dt.NewRow();

Este es el código. Cuando corro la líneaDataRow row = dt.NewRow(); Me sale una excepción:

Referencia a objeto no establecida como instancia de un objeto

Encuentrodt es nulo, ¿por qué y cómo amarlo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta