Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Data / System / Data / ConstraintConverter.cs / 1 / ConstraintConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data { using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; ////// sealed internal class ConstraintConverter : ExpandableObjectConverter { // converter classes should have public ctor public ConstraintConverter() { } ////// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ///Gets a value indicating whether this converter can /// convert an object to the given destination type using the context. ////// Converts the given object to another type. The most common types to convert /// are to and from a string object. The default implementation will make a call /// to ToString on the object if the object is valid and if the destination /// type is string. If this cannot convert to the desitnation type, this will /// throw a NotSupportedException. /// public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == null) { throw new ArgumentNullException("destinationType"); } if (destinationType == typeof(InstanceDescriptor) && value is Constraint) { if (value is UniqueConstraint) { UniqueConstraint constr = (UniqueConstraint)value; System.Reflection.ConstructorInfo ctor = typeof(UniqueConstraint).GetConstructor(new Type[] { typeof(string), typeof(string[]), typeof(bool) } ); if (ctor != null) return new InstanceDescriptor(ctor, new object[] { constr.ConstraintName, constr.ColumnNames, constr.IsPrimaryKey }); } else { ForeignKeyConstraint constr = (ForeignKeyConstraint)value; System.Reflection.ConstructorInfo ctor = typeof(ForeignKeyConstraint).GetConstructor(new Type[] { typeof(string), typeof(string), typeof(string[]), typeof(string[]), typeof(AcceptRejectRule), typeof(Rule), typeof(Rule) } ); if (ctor != null) return new InstanceDescriptor(ctor, new object[] { constr.ConstraintName, constr.ParentKey.Table.TableName, constr.ParentColumnNames, constr.ChildColumnNames, constr.AcceptRejectRule, constr.DeleteRule, constr.UpdateRule }); } } return base.ConvertTo(context, culture, value, destinationType); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data { using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; ////// sealed internal class ConstraintConverter : ExpandableObjectConverter { // converter classes should have public ctor public ConstraintConverter() { } ////// public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } ///Gets a value indicating whether this converter can /// convert an object to the given destination type using the context. ////// Converts the given object to another type. The most common types to convert /// are to and from a string object. The default implementation will make a call /// to ToString on the object if the object is valid and if the destination /// type is string. If this cannot convert to the desitnation type, this will /// throw a NotSupportedException. /// public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == null) { throw new ArgumentNullException("destinationType"); } if (destinationType == typeof(InstanceDescriptor) && value is Constraint) { if (value is UniqueConstraint) { UniqueConstraint constr = (UniqueConstraint)value; System.Reflection.ConstructorInfo ctor = typeof(UniqueConstraint).GetConstructor(new Type[] { typeof(string), typeof(string[]), typeof(bool) } ); if (ctor != null) return new InstanceDescriptor(ctor, new object[] { constr.ConstraintName, constr.ColumnNames, constr.IsPrimaryKey }); } else { ForeignKeyConstraint constr = (ForeignKeyConstraint)value; System.Reflection.ConstructorInfo ctor = typeof(ForeignKeyConstraint).GetConstructor(new Type[] { typeof(string), typeof(string), typeof(string[]), typeof(string[]), typeof(AcceptRejectRule), typeof(Rule), typeof(Rule) } ); if (ctor != null) return new InstanceDescriptor(ctor, new object[] { constr.ConstraintName, constr.ParentKey.Table.TableName, constr.ParentColumnNames, constr.ChildColumnNames, constr.AcceptRejectRule, constr.DeleteRule, constr.UpdateRule }); } } return base.ConvertTo(context, culture, value, destinationType); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CertificateManager.cs
- LinqDataSourceSelectEventArgs.cs
- MinMaxParagraphWidth.cs
- ValidationSummary.cs
- NetSectionGroup.cs
- SQLMembershipProvider.cs
- XmlEventCache.cs
- WrapperEqualityComparer.cs
- StructuralType.cs
- LineBreak.cs
- DataMemberFieldEditor.cs
- UrlPath.cs
- LocalizeDesigner.cs
- DataGridViewLinkCell.cs
- OperatorExpressions.cs
- MsmqMessageSerializationFormat.cs
- StringConcat.cs
- FixedLineResult.cs
- XhtmlBasicObjectListAdapter.cs
- BlockCollection.cs
- DataServices.cs
- RootBrowserWindowProxy.cs
- ConfigurationCollectionAttribute.cs
- BitmapVisualManager.cs
- UIElementParagraph.cs
- ByteConverter.cs
- EventMappingSettings.cs
- CodeTypeDelegate.cs
- Membership.cs
- DllNotFoundException.cs
- ProtocolsConfigurationHandler.cs
- ImageProxy.cs
- CharConverter.cs
- UnsafeNativeMethods.cs
- CodeTypeMember.cs
- DataGrid.cs
- Invariant.cs
- CodeExpressionRuleDeclaration.cs
- DiscoveryClientDocuments.cs
- HttpCacheVaryByContentEncodings.cs
- recordstatescratchpad.cs
- TextOptionsInternal.cs
- ConnectionInterfaceCollection.cs
- ExternalException.cs
- PageAdapter.cs
- XMLSyntaxException.cs
- DeclarativeCatalogPart.cs
- PerformanceCounterManager.cs
- ADMembershipProvider.cs
- CodeAttributeArgument.cs
- FixedStringLookup.cs
- VarRefManager.cs
- GeneralTransformGroup.cs
- WpfGeneratedKnownTypes.cs
- SoapRpcMethodAttribute.cs
- RandomNumberGenerator.cs
- RSAOAEPKeyExchangeDeformatter.cs
- XmlDataImplementation.cs
- DBParameter.cs
- SystemGatewayIPAddressInformation.cs
- X509SubjectKeyIdentifierClause.cs
- BitmapMetadataBlob.cs
- CompoundFileIOPermission.cs
- CodeGotoStatement.cs
- FunctionImportMapping.cs
- RtfControls.cs
- ProtocolImporter.cs
- ProxyElement.cs
- XmlSchemaAttribute.cs
- AudienceUriMode.cs
- ObjectParameter.cs
- AppDomainManager.cs
- ZipIOFileItemStream.cs
- StringUtil.cs
- NGCSerializationManager.cs
- OuterGlowBitmapEffect.cs
- XmlSerializerOperationFormatter.cs
- ParsedAttributeCollection.cs
- ListControlBuilder.cs
- ThrowHelper.cs
- SwitchLevelAttribute.cs
- CompoundFileStreamReference.cs
- CodeGen.cs
- TypeElement.cs
- DesignerProperties.cs
- XmlSchemaSimpleContentExtension.cs
- MailWriter.cs
- securitycriticaldataClass.cs
- StandardOleMarshalObject.cs
- MessageBox.cs
- TriggerCollection.cs
- DrawingContext.cs
- EntityContainerRelationshipSet.cs
- FillErrorEventArgs.cs
- BuildResult.cs
- PrinterSettings.cs
- NumericPagerField.cs
- SqlCommandAsyncResult.cs
- MimeObjectFactory.cs
- WindowsPrincipal.cs