/// <summary> /// This will return the target column name. this is important because we do not want to return the column name of the current table, but rather that /// column it is pointing to. this DOES NOT check and see if the item already exists. /// </summary> /// <param name="This">The Context Relationship</param> /// <param name="ContextSchemaObjectName">The parent with the column name you don't want</param> /// <returns></returns> private static string AsObjectPropertyNameAttempt(this RelationshipSummary relGroupSummary) { var PROC_NAME = string.Format("RelationshipExtentions.AsObjectPropertyNameAttempt('FKName={0}')", relGroupSummary.Name); var ToObjectFieldName = ""; try { var entity = relGroupSummary.Entity; var RelationshipObjectNameList = new List <string>(); string ToTableName = entity.Parent.Entities[relGroupSummary.ToTableName].Alias; ToObjectFieldName = ToTableName.ToCsObjectName(); //string ToObjectFieldName = relGroupSummary.ToUniqueColumnName().ToCsObjectName(); var CountOfThisEntityInRelationships = relGroupSummary.Entity.Relationships.CountItems(RelationSearchField.ToTableName, relGroupSummary.ToTableName); if (CountOfThisEntityInRelationships > 1) { //ToObjectFieldName = ToTableName + string.Join(",", relGroupSummary.ToColumnName).ToCsObjectName(); ToObjectFieldName = ((relGroupSummary.MultiplicityType.EndsAsMany() ? relGroupSummary.ToUniqueColumnName().ToPlural() : string.Join(",", relGroupSummary.ToColumnName) + Internal.AppSettings.Instance.Configuration.Database.InverseFKTargetNameCollisionSuffix) ).ToCsObjectName(); } else { ToObjectFieldName = ((relGroupSummary.MultiplicityType.EndsAsMany() ? relGroupSummary.ToUniqueColumnName().ToPlural() : ToObjectFieldName + Internal.AppSettings.Instance.Configuration.Database.InverseFKTargetNameCollisionSuffix) ).ToCsObjectName(); } return(ToObjectFieldName); } catch (Exception ex) { return(string.Format("/* ERROR: {0} */", string.Format("{0}: {1}", PROC_NAME, ex.Message))); } }