Вы получаете IQueryable<String>
обратно от вашего запроса. Вам нужен Первый или Одиночный или что-то:
string vend = (from vnd in db.Vendors
where vnd.VendorID == id
select vnd.VendorName).First().ToString();
ToString
не требуется, если VendorName
является строкой.
string vend = db.Vendors.Single(vnd => vnd.VendorID == id); // more terse
Первая извлечет первую запись из набора и выдаст исключение, если набор будет пустым.
FirstOrDefault вернет первую запись или значение по умолчанию для ожидаемого типа, без исключения.
Single вернет первую запись набора, но сгенерирует исключение, если в наборе более одной записи или если набор пуст.
SingleOrDefault вернет первую запись набора или значение по умолчанию для типа, если оно пустое, но выдаст исключение, если в наборе более одной записи. 1032 *