Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / CqlWriter.cs / 2 / CqlWriter.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Text.RegularExpressions; using System.Text; using System.Data.Common.Utils; using System.Data.Mapping.ViewGeneration.Utils; using System.Data.Metadata.Edm; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class contains helper methods needed for generating Cql internal static class CqlWriter { #region Fields private static readonly Regex s_wordIdentifierRegex = new Regex(@"^[_A-Za-z]\w*$", RegexOptions.ECMAScript | RegexOptions.Compiled); #endregion #region Helper Methods // effects: Given a block name and a field in it -- returns a string // of form "blockName.field". Does not perform any escaping internal static string GetQualifiedName(string blockName, string field) { string result = StringUtil.FormatInvariant("{0}.{1}", blockName, field); return result; } // effects: Modifies builder to contain an escaped version of type's name internal static void AppendEscapedTypeName(StringBuilder builder, EdmType type) { AppendEscapedQualifiedName(builder, type.NamespaceName, type.Name); } // effects: Modifies builder to contain an escaped version of "namespc.name" internal static void AppendEscapedQualifiedName(StringBuilder builder, string namespc, string name) { AppendEscapedName(builder, namespc); builder.Append('.'); AppendEscapedName(builder, name); } // effects: Modifies builder to contain an escaped version of "name" internal static void AppendEscapedName(StringBuilder builder, string name) { if (s_wordIdentifierRegex.IsMatch(name) && false == ExternalCalls.IsReservedKeyword(name)) { // We do not need to escape the name if it is a simple name and it is not a keyword builder.Append(name); } else { string newName = name.Replace("]", "]]"); builder.Append('[') .Append(newName) .Append(']'); } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Text.RegularExpressions; using System.Text; using System.Data.Common.Utils; using System.Data.Mapping.ViewGeneration.Utils; using System.Data.Metadata.Edm; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class contains helper methods needed for generating Cql internal static class CqlWriter { #region Fields private static readonly Regex s_wordIdentifierRegex = new Regex(@"^[_A-Za-z]\w*$", RegexOptions.ECMAScript | RegexOptions.Compiled); #endregion #region Helper Methods // effects: Given a block name and a field in it -- returns a string // of form "blockName.field". Does not perform any escaping internal static string GetQualifiedName(string blockName, string field) { string result = StringUtil.FormatInvariant("{0}.{1}", blockName, field); return result; } // effects: Modifies builder to contain an escaped version of type's name internal static void AppendEscapedTypeName(StringBuilder builder, EdmType type) { AppendEscapedQualifiedName(builder, type.NamespaceName, type.Name); } // effects: Modifies builder to contain an escaped version of "namespc.name" internal static void AppendEscapedQualifiedName(StringBuilder builder, string namespc, string name) { AppendEscapedName(builder, namespc); builder.Append('.'); AppendEscapedName(builder, name); } // effects: Modifies builder to contain an escaped version of "name" internal static void AppendEscapedName(StringBuilder builder, string name) { if (s_wordIdentifierRegex.IsMatch(name) && false == ExternalCalls.IsReservedKeyword(name)) { // We do not need to escape the name if it is a simple name and it is not a keyword builder.Append(name); } else { string newName = name.Replace("]", "]]"); builder.Append('[') .Append(newName) .Append(']'); } } #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
- HttpWebRequest.cs
- XXXInfos.cs
- LinearQuaternionKeyFrame.cs
- LabelExpression.cs
- GroupQuery.cs
- TreeViewItemAutomationPeer.cs
- WebPartManagerInternals.cs
- Util.cs
- ComboBoxRenderer.cs
- MsmqTransportBindingElement.cs
- OneOfConst.cs
- SymbolType.cs
- XmlComment.cs
- DesignerAdRotatorAdapter.cs
- OutputCacheProfile.cs
- ProviderBase.cs
- ProcessRequestAsyncResult.cs
- BindingExpression.cs
- XmlnsCompatibleWithAttribute.cs
- Listbox.cs
- ToolStripRenderEventArgs.cs
- Transactions.cs
- ListComponentEditor.cs
- TypeConverterHelper.cs
- ReceiveErrorHandling.cs
- SafeBitVector32.cs
- QueryCursorEventArgs.cs
- SessionPageStatePersister.cs
- DataGridViewCellEventArgs.cs
- ScaleTransform.cs
- InvalidateEvent.cs
- Timer.cs
- CaseInsensitiveComparer.cs
- RectKeyFrameCollection.cs
- ViewSimplifier.cs
- GlobalEventManager.cs
- _HelperAsyncResults.cs
- IntSecurity.cs
- log.cs
- SearchForVirtualItemEventArgs.cs
- MarkupExtensionReturnTypeAttribute.cs
- CounterSample.cs
- DesignerDataStoredProcedure.cs
- HtmlTable.cs
- Model3D.cs
- SemanticResolver.cs
- Queue.cs
- SoundPlayerAction.cs
- SqlDataSource.cs
- WebPartsSection.cs
- HelpProvider.cs
- DynamicResourceExtension.cs
- Matrix3DConverter.cs
- MouseButtonEventArgs.cs
- NativeCppClassAttribute.cs
- ContentDisposition.cs
- NeedSkipTokenVisitor.cs
- MetadataArtifactLoader.cs
- EventQueueState.cs
- DashStyle.cs
- RSAPKCS1SignatureDeformatter.cs
- KerberosTokenFactoryCredential.cs
- Polyline.cs
- SafeFileMappingHandle.cs
- DefaultDiscoveryServiceExtension.cs
- CombinedGeometry.cs
- NavigationProperty.cs
- TabletDevice.cs
- GeometryCollection.cs
- ValidationPropertyAttribute.cs
- ConfigXmlSignificantWhitespace.cs
- PenThread.cs
- WindowsTab.cs
- RegexMatchCollection.cs
- TypeConstant.cs
- QualifiedCellIdBoolean.cs
- Rights.cs
- PersonalizationProvider.cs
- ServiceHostingEnvironmentSection.cs
- StringBuilder.cs
- BinaryConverter.cs
- WebBaseEventKeyComparer.cs
- DocumentPageHost.cs
- QilList.cs
- XamlPointCollectionSerializer.cs
- DataGridViewCellCollection.cs
- ToolStripCodeDomSerializer.cs
- Rect.cs
- FindProgressChangedEventArgs.cs
- FontUnitConverter.cs
- UriScheme.cs
- DayRenderEvent.cs
- AssemblyCollection.cs
- entityreference_tresulttype.cs
- HttpModulesInstallComponent.cs
- KnownTypesProvider.cs
- TreeViewItemAutomationPeer.cs
- Stroke2.cs
- FormViewInsertEventArgs.cs
- XmlHierarchyData.cs