/// <summary> /// Get attribute data /// </summary> /// <param name="member"></param> /// <param name="attributes"></param> /// <param name="field"></param> protected override void GetPropertyMetadata(MemberInfo member, object[] attributes, IQObjectMapper.Impl.DelegateInfo fieldTemp) { base.GetPropertyMetadata(member, attributes, fieldTemp); bool ignore = false; string name = member.Name; bool alreadyMapped = TempDelegateInfo.ContainsKey(name); IDelegateInfo field = (IDelegateInfo)fieldTemp; foreach (var attr in attributes) { if (attr is IQIgnore) { if (alreadyMapped) { throw new InvalidOperationException("The field '" + name + "' is marked for ignore, but has been identified in a constructor already."); } ignore = true; break; } if (attr is IQPrimaryKey) { field.IsPrimaryKey = true; } IQField fldAttr = null; if (attr is IQField) { fieldTemp.Include = true; fldAttr = (IQField)attr; } string sqlName = field.SqlName; if (fldAttr != null) { if (!String.IsNullOrEmpty(fldAttr.SqlName)) { sqlName = fldAttr.SqlName; } if (fldAttr.PrimaryKey) { field.IsPrimaryKey = true; } if (fldAttr.IgnoreNull) { field.IgnoreNull = true; } if (fldAttr.ReadOnly) { field.IsSqlReadOnly = true; } } field.SqlName = sqlName; } if (ignore) { field.Include = false; } }
public bool TryGetValue(string fieldName, out IDelegateInfo info) { IQObjectMapper.IDelegateInfo baseInfo; if (base.TryGetValue(fieldName, out baseInfo)) { info = (IDelegateInfo)baseInfo; return(true); } else { info = null; return(false); } }
private void ParseParams(IDelegateInfo Info) { string text3; string text1 = string.Empty; string text2 = string.Empty; Point point1 = new Point(this.tokenPos, base.LineIndex); while (this.GetParamTypeAndName(ref text1, ref text2, ref point1, out text3)) { Info.Params.Add(new ParamInfo(text1, text2, point1, text3)); if (base.TokenString == ")") { return; } text1 = string.Empty; text2 = string.Empty; } }
public NonFactoryDelegateException(IDelegateInfo delegateInfo) : base($"Delegate {delegateInfo} is not supported. Delegates must have a return type and no parameters.") { }
public ServiceFactory(IDelegateInfo delegateInfo) { _delegateInfo = delegateInfo; }
public bool TryGetValue(string fieldName, out IDelegateInfo info) { IQObjectMapper.IDelegateInfo baseInfo; if (base.TryGetValue(fieldName, out baseInfo)) { info = (IDelegateInfo)baseInfo; return true; } else { info = null; return false; } }