I am not sure what you are trying to do with this line in your code
NewsItem newsItem = (NewsItem)TypeDescriptor.GetProperties(e.Item.DataItem)["NewsItem"].GetValue(e.Item.DataItem);
where the error is actually thrown.
TypeDescriptor.GetProperties returns the collection of properties
on a component or type. There is no property NewsItem which you pass as a key.
The data item of the repeater is NewsItem so you can have only this
var newsItem = e.Item.DataItem as NewsItem;
If the e.Item.DataItem is null then the repeater datasource is empty and there are no items in it.
the Telerik team