PropertyModel CreateProperty(String name, BindingProperty property) { var originalName = property.OriginalName; var forwardedTo = property.ForwardedTo; var targetType = property.ValueType; var ignoreSet = property.AllowSet == false; var refName = name.Capitalize(); if (forwardedTo != null) { originalName = String.Concat(originalName, ".", forwardedTo); ignoreSet = false; targetType = typeof(String); } var getter = new MethodModel { Name = name, OriginalName = property.OriginalName, IsLenient = property.IsLenient, Parameters = Enumerable.Empty <ParameterModel>(), RefName = "Get" + refName, IsVoid = property.AllowGet == false }; var setter = new MethodModel { Name = name, OriginalName = originalName, IsLenient = property.IsLenient, Parameters = new [] { new ParameterModel { Converter = GetConverter(targetType), Index = 0, IsOptional = false, Name = "value", ParameterType = targetType, IsParams = false } }, RefName = "Set" + refName, IsVoid = ignoreSet }; return(new PropertyModel { Name = name, Getter = getter, Setter = setter }); }
void IVisitor.Visit(BindingProperty property) { }
PropertyModel CreateProperty(String name, BindingProperty property) { var originalName = property.OriginalName; var forwardedTo = property.ForwardedTo; var targetType = property.ValueType; var ignoreSet = property.AllowSet == false; var refName = name.Capitalize(); if (forwardedTo != null) { originalName = String.Concat(originalName, ".", forwardedTo); ignoreSet = false; targetType = typeof(String); } var getter = new MethodModel { Name = name, OriginalName = property.OriginalName, IsLenient = property.IsLenient, Parameters = Enumerable.Empty<ParameterModel>(), RefName = "Get" + refName, IsVoid = property.AllowGet == false }; var setter = new MethodModel { Name = name, OriginalName = originalName, IsLenient = property.IsLenient, Parameters = new [] { new ParameterModel { Converter = GetConverter(targetType), Index = 0, IsOptional = false, Name = "value", ParameterType = targetType, IsParams = false } }, RefName = "Set" + refName, IsVoid = ignoreSet }; return new PropertyModel { Name = name, Getter = getter, Setter = setter }; }
public void Visit(BindingProperty property) { Include(property.ValueType); }