示例#1
0
 protected virtual void VisitEdmAssociationEnd(EdmAssociationEnd item)
 {
     VisitEdmNamedMetadataItem(item);
 }
 internal void WriteReferentialConstraintRoleElement(
     string roleName, EdmAssociationEnd edmAssociationEnd, IEnumerable<EdmProperty> properties)
 {
     _xmlWriter.WriteStartElement(roleName);
     _xmlWriter.WriteAttributeString(CsdlConstants.Attribute_Role, edmAssociationEnd.Name);
     foreach (var property in properties)
     {
         _xmlWriter.WriteStartElement(CsdlConstants.Element_PropertyRef);
         _xmlWriter.WriteAttributeString(CsdlConstants.Attribute_Name, property.Name);
         _xmlWriter.WriteEndElement();
     }
     _xmlWriter.WriteEndElement();
 }
 protected override void VisitEdmAssociationEnd(EdmAssociationEnd item)
 {
     _schemaWriter.WriteAssociationEndElementHeader(item);
     if (item.DeleteAction.HasValue
         && item.DeleteAction.Value != EdmOperationAction.None)
     {
         _schemaWriter.WriteOperationActionElement(CsdlConstants.Element_OnDelete, item.DeleteAction.Value);
     }
     VisitEdmNamedMetadataItem(item);
     _schemaWriter.WriteEndElement();
 }
        internal void WriteAssociationEndElementHeader(EdmAssociationEnd associationEnd)
        {
            _xmlWriter.WriteStartElement(CsdlConstants.Element_End);
            _xmlWriter.WriteAttributeString(CsdlConstants.Attribute_Role, associationEnd.Name);

            var typeName = associationEnd.EntityType.Name;
            _xmlWriter.WriteAttributeString(
                CsdlConstants.Attribute_Type, GetQualifiedTypeName(CsdlConstants.Value_Self, typeName));
            _xmlWriter.WriteAttributeString(
                CsdlConstants.Attribute_Multiplicity, GetXmlMultiplicity(associationEnd.EndKind));
        }