public IEnumerable <IMember> Get(TypeInfo parameter) { var properties = _properties.Get(parameter) .ToArray(); var length = properties.Length; for (var i = 0; i < length; i++) { var property = properties[i]; if (_specification.IsSatisfiedBy(property)) { yield return(_members.Get(property)); } } var fields = _fields.Get(parameter) .ToArray(); var l = fields.Length; for (var i = 0; i < l; i++) { var field = fields[i]; if (_specification.IsSatisfiedBy(field)) { yield return(_members.Get(field)); } } }
IEnumerable <IMember> Yield(TypeInfo parameter) { foreach (var property in _properties) { if (property.IsSatisfiedBy(parameter)) { var propertyInfo = property.Metadata; var identity = _identities.Get(propertyInfo.DeclaringType); yield return(new AttachedMember(identity, _members.Get(propertyInfo), property)); } } }
IEnumerable <IMember> Yield(TypeInfo type, ParameterInfo[] parameters) { var length = parameters.Length; for (var i = 0; i < length; i++) { var reflected = Members(type, parameters[i].Name).Only(); var member = reflected != null?_source.Get(reflected) : null; if (member != null && !member.IsWritable && Allowed(reflected)) { yield return(new ParameterizedMember(member)); } } }
IMemberSerializer Create(PropertyInfo metadata, TypeInfo classification) => _serializers.Get(_members.Get(new MemberDescriptor(metadata, classification)));
public IActionResult Edit(int id) { var member = _members.Get(id); return(View(member)); }