Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Metadata / Edm / FacetValues.cs / 1 / FacetValues.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
using System.Data.Common;
using System.Diagnostics;
namespace System.Data.Metadata.Edm
{
internal class FacetValues
{
private FacetValueContainer _nullable;
private FacetValueContainer _maxLength;
private FacetValueContainer _unicode;
private FacetValueContainer _fixedLength;
private FacetValueContainer _precision;
private FacetValueContainer _scale;
internal FacetValueContainer Nullable
{
set { _nullable = value; }
}
internal FacetValueContainer MaxLength
{
set { _maxLength = value; }
}
internal FacetValueContainer Unicode
{
set { _unicode = value; }
}
internal FacetValueContainer FixedLength
{
set { _fixedLength = value; }
}
internal FacetValueContainer Precision
{
set { _precision = value; }
}
internal FacetValueContainer Scale
{
set { _scale = value; }
}
internal bool TryGetFacet(FacetDescription description, out Facet facet)
{
if (description.FacetName == DbProviderManifest.NullableFacetName)
{
if (_nullable.HasValue)
{
facet = Facet.Create(description, _nullable.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.MaxLengthFacetName)
{
if (_maxLength.HasValue)
{
facet = Facet.Create(description, _maxLength.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.UnicodeFacetName)
{
if (_unicode.HasValue)
{
facet = Facet.Create(description, _unicode.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.FixedLengthFacetName)
{
if (_fixedLength.HasValue)
{
facet = Facet.Create(description, _fixedLength.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.PrecisionFacetName)
{
if (_precision.HasValue)
{
facet = Facet.Create(description, _precision.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.ScaleFacetName)
{
if (_scale.HasValue)
{
facet = Facet.Create(description, _scale.GetValueAsObject());
return true;
}
}
facet = null;
return false;
}
internal static FacetValues NullFacetValues
{
get
{
// null out everything except Nullable, and DefaultValue
FacetValues values = new FacetValues();
values.FixedLength = (bool?)null;
values.MaxLength = (int?)null;
values.Precision = (byte?)null;
values.Scale = (byte?)null;
values.Unicode = (bool?)null;
return values;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
using System.Data.Common;
using System.Diagnostics;
namespace System.Data.Metadata.Edm
{
internal class FacetValues
{
private FacetValueContainer _nullable;
private FacetValueContainer _maxLength;
private FacetValueContainer _unicode;
private FacetValueContainer _fixedLength;
private FacetValueContainer _precision;
private FacetValueContainer _scale;
internal FacetValueContainer Nullable
{
set { _nullable = value; }
}
internal FacetValueContainer MaxLength
{
set { _maxLength = value; }
}
internal FacetValueContainer Unicode
{
set { _unicode = value; }
}
internal FacetValueContainer FixedLength
{
set { _fixedLength = value; }
}
internal FacetValueContainer Precision
{
set { _precision = value; }
}
internal FacetValueContainer Scale
{
set { _scale = value; }
}
internal bool TryGetFacet(FacetDescription description, out Facet facet)
{
if (description.FacetName == DbProviderManifest.NullableFacetName)
{
if (_nullable.HasValue)
{
facet = Facet.Create(description, _nullable.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.MaxLengthFacetName)
{
if (_maxLength.HasValue)
{
facet = Facet.Create(description, _maxLength.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.UnicodeFacetName)
{
if (_unicode.HasValue)
{
facet = Facet.Create(description, _unicode.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.FixedLengthFacetName)
{
if (_fixedLength.HasValue)
{
facet = Facet.Create(description, _fixedLength.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.PrecisionFacetName)
{
if (_precision.HasValue)
{
facet = Facet.Create(description, _precision.GetValueAsObject());
return true;
}
}
else if (description.FacetName == DbProviderManifest.ScaleFacetName)
{
if (_scale.HasValue)
{
facet = Facet.Create(description, _scale.GetValueAsObject());
return true;
}
}
facet = null;
return false;
}
internal static FacetValues NullFacetValues
{
get
{
// null out everything except Nullable, and DefaultValue
FacetValues values = new FacetValues();
values.FixedLength = (bool?)null;
values.MaxLength = (int?)null;
values.Precision = (byte?)null;
values.Scale = (byte?)null;
values.Unicode = (bool?)null;
return values;
}
}
}
}
// 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
- GradientBrush.cs
- iisPickupDirectory.cs
- ProcessHost.cs
- SmtpMail.cs
- WebPartUtil.cs
- CollectionConverter.cs
- PolicyLevel.cs
- RenameRuleObjectDialog.Designer.cs
- TrueReadOnlyCollection.cs
- PathGeometry.cs
- TableCellAutomationPeer.cs
- LocalsItemDescription.cs
- TableRow.cs
- DataGridViewColumnConverter.cs
- FormCollection.cs
- RegionInfo.cs
- TriggerCollection.cs
- XmlDataLoader.cs
- ItemCollection.cs
- PeerObject.cs
- XMLUtil.cs
- StrongNameIdentityPermission.cs
- ContentHostHelper.cs
- Binding.cs
- MouseOverProperty.cs
- EndOfStreamException.cs
- AssociationEndMember.cs
- DateTimeUtil.cs
- ReaderWriterLockSlim.cs
- Pool.cs
- SByteConverter.cs
- CopyNodeSetAction.cs
- Stylesheet.cs
- TextServicesHost.cs
- XmlBaseReader.cs
- AutomationPropertyInfo.cs
- SudsCommon.cs
- SystemInformation.cs
- RtfControls.cs
- SafeCryptContextHandle.cs
- ConversionContext.cs
- ItemCollection.cs
- DiffuseMaterial.cs
- EndGetFileNameFromUserRequest.cs
- SQLUtility.cs
- BaseTypeViewSchema.cs
- Identifier.cs
- AgileSafeNativeMemoryHandle.cs
- CodeAssignStatement.cs
- DSASignatureDeformatter.cs
- EncoderParameters.cs
- Attachment.cs
- DataServiceQueryContinuation.cs
- FilteredReadOnlyMetadataCollection.cs
- UnmanagedMemoryStream.cs
- GeometryCollection.cs
- Metafile.cs
- RefreshEventArgs.cs
- StopStoryboard.cs
- ReadOnlyDictionary.cs
- XmlSchemaCollection.cs
- EmptyEnumerator.cs
- _ShellExpression.cs
- RijndaelCryptoServiceProvider.cs
- EntityDataSourceWrapper.cs
- ClientScriptManagerWrapper.cs
- InputProcessorProfiles.cs
- SystemWebCachingSectionGroup.cs
- PrtTicket_Public.cs
- DesignerSerializerAttribute.cs
- TouchesOverProperty.cs
- Normalization.cs
- TextTabProperties.cs
- TextEmbeddedObject.cs
- EntityDataSourceConfigureObjectContext.cs
- MatrixUtil.cs
- WSAddressing10ProblemHeaderQNameFault.cs
- PathGeometry.cs
- FtpWebRequest.cs
- X509Utils.cs
- ExtensibleClassFactory.cs
- RectangleConverter.cs
- TreeChangeInfo.cs
- SharedPersonalizationStateInfo.cs
- RootBuilder.cs
- Matrix.cs
- DecimalConverter.cs
- SqlUnionizer.cs
- _ChunkParse.cs
- XslException.cs
- CellTreeNode.cs
- _OverlappedAsyncResult.cs
- util.cs
- XmlSchemaDocumentation.cs
- HtmlEmptyTagControlBuilder.cs
- Bold.cs
- LineVisual.cs
- GeometryCombineModeValidation.cs
- StylusSystemGestureEventArgs.cs
- CodeRegionDirective.cs