private void GetRelationMethods(string relationIdentifier, string propName) { if (Settings.UseTypeInProps) { string cln = new WXMLCodeDomGeneratorNameHelper(_settings).GetEntityClassName(_entity, false); //string dn = cln + ".Descriptor"; Members.Add(Define.Method(MemberAttributes.Public | MemberAttributes.Final | MemberAttributes.Static, typeof(RelationDescEx), (EntityUnion hostEntity) => "Get" + propName, Emit.@return((EntityUnion hostEntity) => new RelationDescEx(hostEntity, new M2MRelationDesc( new EntityUnion(CodeDom.TypeOf(cln)), relationIdentifier )) ) )); } else { //string cln = new WXMLCodeDomGeneratorNameHelper(_settings).GetEntityClassName(_entity, true); const string dn = "Descriptor";//cln + ".Descriptor"; Members.Add(Define.Method(MemberAttributes.Public | MemberAttributes.Final | MemberAttributes.Static, typeof(RelationDescEx), (EntityUnion hostEntity) => "Get" + propName, Emit.@return((EntityUnion hostEntity) => new RelationDescEx(hostEntity, new M2MRelationDesc( new EntityUnion(CodeDom.Field <string>(CodeDom.TypeRef_str(dn), "EntityName")), relationIdentifier )) ) )); } Members.Add(Define.Method(MemberAttributes.Public | MemberAttributes.Final | MemberAttributes.Static, typeof(RelationDescEx), (EntityUnion hostEntity, EntityUnion joinEntity) => "Get" + propName, Emit.@return((EntityUnion hostEntity, EntityUnion joinEntity) => new RelationDescEx(hostEntity, new M2MRelationDesc( joinEntity, relationIdentifier )) ) )); }