Попробуйте это:
int vectorLayerId = 5;
int pointFeatId = 10;
var RealValue = x.VectorLayer_FieldsValue
.Where(f=>f.FeatIdPointFeatures == vectorLayerId && f.VectorLayerFieldsId == pointFeatId)
.Select(v => new { v.Id, v.FieldValue })
.FirstOrDefault() ?? new { Id = 0, FieldValue = "0"};
При этом используется оператор объединения нулей (??) для возврата анонимного типа со свойством Id и FieldValue (оба установлены в 0), когда запрос Linq возвращает ноль.
Кстати, если вы используете C # 7, вы могли бы также сделать так, чтобы ваш запрос Linq создавал кортеж вместо анонимного типа, что может быть проще, если вам нужно вернуть его в функцию или что-то в этом роде:
int vectorLayerId = 5;
int pointFeatId = 10;
var RealValue = x.VectorLayer_FieldsValue
.Where(f=>f.FeatIdPointFeatures == vectorLayerId && f.VectorLayerFieldsId == pointFeatId)
.Select(v => (v.Id, v.FieldValue))
.FirstOrDefault() ?? (Id: 0, FieldValue: "0");