private void AddIdPropertyIfAvailableTo(PropertyDescriptorCollection modelProperties, ModelBindingContext bindingContext) { PropertyDescriptor idProperty = (from PropertyDescriptor property in TypeDescriptor.GetProperties(bindingContext.ModelType) where property.Name == ID_PROPERTY_NAME select property).SingleOrDefault(); if (idProperty != null && !modelProperties.Contains(idProperty)) { modelProperties.Add(idProperty); } }