В Visual Studio 2013 я использую конечную точку OData V4 с помощью генератора клиентского кода OData, найденного в Nuget. Неожиданно на этой неделе шаблон t4 выдал ошибку: Невозможно привести объект типа Microsoft.OData.Edm.Csdl.CsdlSemantics.UnresolvedType к типу Microsoft.OData.Edm.IEdmCollectionType.
У меня есть 7 конечных точек OData, с которыми я работаю, и только у одной из них было обновление на серверной части, которое потребовало повторного сохранения файла * .tt. При сохранении ошибка появилась и оставила выходной файл * .cs пустым. Затем я попытался сохранить один из файлов * .tt, в котором не было изменений модели в конечной точке OData, чтобы посмотреть, как он себя ведет. Мысль заключалась в том, что, возможно, изменение модели в конечной точке каким-то образом несовместимо с генератором клиентского кода. К сожалению, это не удалось, и с той же ошибкой был получен пустой файл * .cs.
К счастью, все версируется с помощью git, и я смог откатить файлы, чтобы проект продолжал работать.
Поместите это здесь на случай, если кто-то еще обновит свой генератор кода клиента OData и расстроится.