Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Metadata / TargetPerspective.cs / 3 / TargetPerspective.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
namespace System.Data.Metadata.Edm
{
using System.Collections.Generic;
using System.Globalization;
///
/// Internal helper class for query
///
internal class TargetPerspective : Perspective
{
#region Constructors
///
/// Creates a new instance of perspective class so that query can work
/// ignorant of all spaces
///
/// runtime metadata container
internal TargetPerspective(MetadataWorkspace metadataWorkspace)
: base(metadataWorkspace, DataSpace.SSpace)
{
_modelPerspective = new ModelPerspective(metadataWorkspace);
}
#endregion
#region Fields
// TargetPerspective uses a ModelPerspective for a second lookup in type lookup
private ModelPerspective _modelPerspective;
#endregion
#region Methods
///
/// Look up a type in the target data space based upon the fullName
///
/// fullName
/// true for case-insensitive lookup
///
/// a list of types that have the specified full name but may differ by strong name
internal override bool TryGetTypeByName(string fullName, bool ignoreCase, out TypeUsage usage)
{
EntityUtil.CheckStringArgument(fullName, "fullName");
EdmType edmType = null;
if (this.MetadataWorkspace.TryGetItem(fullName, ignoreCase, this.TargetDataspace, out edmType))
{
usage = TypeUsage.Create(edmType);
usage = Helper.GetModelTypeUsage(usage);
return true;
}
return _modelPerspective.TryGetTypeByName(fullName, ignoreCase, out usage);
}
///
/// Returns the entity container in CSpace or SSpace
///
///
///
///
///
internal override bool TryGetEntityContainer(string name, bool ignoreCase, out EntityContainer entityContainer)
{
if (!base.TryGetEntityContainer(name, ignoreCase, out entityContainer))
{
return _modelPerspective.TryGetEntityContainer(name, ignoreCase, out entityContainer);
}
return true;
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
namespace System.Data.Metadata.Edm
{
using System.Collections.Generic;
using System.Globalization;
///
/// Internal helper class for query
///
internal class TargetPerspective : Perspective
{
#region Constructors
///
/// Creates a new instance of perspective class so that query can work
/// ignorant of all spaces
///
/// runtime metadata container
internal TargetPerspective(MetadataWorkspace metadataWorkspace)
: base(metadataWorkspace, DataSpace.SSpace)
{
_modelPerspective = new ModelPerspective(metadataWorkspace);
}
#endregion
#region Fields
// TargetPerspective uses a ModelPerspective for a second lookup in type lookup
private ModelPerspective _modelPerspective;
#endregion
#region Methods
///
/// Look up a type in the target data space based upon the fullName
///
/// fullName
/// true for case-insensitive lookup
///
/// a list of types that have the specified full name but may differ by strong name
internal override bool TryGetTypeByName(string fullName, bool ignoreCase, out TypeUsage usage)
{
EntityUtil.CheckStringArgument(fullName, "fullName");
EdmType edmType = null;
if (this.MetadataWorkspace.TryGetItem(fullName, ignoreCase, this.TargetDataspace, out edmType))
{
usage = TypeUsage.Create(edmType);
usage = Helper.GetModelTypeUsage(usage);
return true;
}
return _modelPerspective.TryGetTypeByName(fullName, ignoreCase, out usage);
}
///
/// Returns the entity container in CSpace or SSpace
///
///
///
///
///
internal override bool TryGetEntityContainer(string name, bool ignoreCase, out EntityContainer entityContainer)
{
if (!base.TryGetEntityContainer(name, ignoreCase, out entityContainer))
{
return _modelPerspective.TryGetEntityContainer(name, ignoreCase, out entityContainer);
}
return true;
}
#endregion
}
}
// 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
- XpsTokenContext.cs
- NavigationFailedEventArgs.cs
- NativeRightsManagementAPIsStructures.cs
- ConnectionManagementElement.cs
- IgnoreDeviceFilterElement.cs
- IndexedString.cs
- XPathNavigator.cs
- ConfigurationElement.cs
- NameValuePair.cs
- WindowsPen.cs
- XmlValueConverter.cs
- QueryCacheEntry.cs
- ValidationEventArgs.cs
- RestHandler.cs
- SupportsEventValidationAttribute.cs
- LocalizationComments.cs
- activationcontext.cs
- AuthStoreRoleProvider.cs
- ClientScriptManager.cs
- IssuedTokenParametersElement.cs
- BufferedReceiveElement.cs
- DefaultTraceListener.cs
- SystemException.cs
- Timeline.cs
- UrlAuthFailedErrorFormatter.cs
- DictionaryBase.cs
- SqlConnectionStringBuilder.cs
- Image.cs
- OdbcException.cs
- TypeSystem.cs
- PagesSection.cs
- PropertyTabChangedEvent.cs
- PolyBezierSegment.cs
- CheckBoxRenderer.cs
- StringPropertyBuilder.cs
- SafeFileHandle.cs
- DataStorage.cs
- PrefixQName.cs
- LogicalMethodInfo.cs
- HttpGetServerProtocol.cs
- ModelUIElement3D.cs
- DesignerContextDescriptor.cs
- ConfigXmlElement.cs
- ZoneButton.cs
- ConfigurationFileMap.cs
- BooleanToVisibilityConverter.cs
- SelectionGlyphBase.cs
- SafeLocalAllocation.cs
- SrgsElementFactoryCompiler.cs
- RecordConverter.cs
- RemotingAttributes.cs
- PkcsMisc.cs
- ProgressBarHighlightConverter.cs
- FastPropertyAccessor.cs
- ResourceManagerWrapper.cs
- RangeBase.cs
- SymbolTable.cs
- ParameterToken.cs
- KeyConverter.cs
- ManifestResourceInfo.cs
- ListenerServiceInstallComponent.cs
- StateItem.cs
- TransactionTraceIdentifier.cs
- InternalBufferOverflowException.cs
- ListViewCancelEventArgs.cs
- FactoryGenerator.cs
- InternalResources.cs
- ConfigurationPropertyCollection.cs
- CodeDOMProvider.cs
- ObjectHandle.cs
- PersistChildrenAttribute.cs
- InvalidPrinterException.cs
- CompositeControl.cs
- Pens.cs
- WmlImageAdapter.cs
- Internal.cs
- RoleManagerModule.cs
- TaiwanCalendar.cs
- ReadOnlyDictionary.cs
- ProviderSettings.cs
- ToolStrip.cs
- RenderTargetBitmap.cs
- Queue.cs
- RuleCache.cs
- VersionedStream.cs
- Msec.cs
- CharStorage.cs
- ConnectivityStatus.cs
- PaperSize.cs
- ShaperBuffers.cs
- Pair.cs
- ListViewCommandEventArgs.cs
- DataServiceException.cs
- PolyLineSegment.cs
- OdbcFactory.cs
- IPGlobalProperties.cs
- ResourceContainer.cs
- SingleBodyParameterMessageFormatter.cs
- TemplateBindingExtensionConverter.cs
- FileSystemInfo.cs