Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Common / EntitySql / ParserOptions.cs / 3 / ParserOptions.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Common.EntitySql { using System; using System.Globalization; // // disables XML doc overloads warning as error // #pragma warning disable 0419 ////// Represents eSql Text Compilation options. /// ParserOptions can be optionaly passed to CqlQuery.Compile or CqlQuery.Parse methods /// internal sealed class ParserOptions { //////
///Thrown if the properties are changed after being consumed by CqlQuery.Parse or CqlQuery.Compile ////// Once ParserOptions is passed and consumed by Compile or Parse Methods, it cannot be changed. /// If a setter is called after a ParserOptions instance is consumed by Parse or Compile methods, a EntityException will be raised. /// ///- ///
Compile Method - ///
Parse Method /// eSql enum Case Sensitivity values /// internal enum CaseSensitiveness { ////// Case Sensitive /// CaseSensitive, ////// Case Insensitive /// CaseInsensitive } private bool _bReadOnly = false; ////// AllowQuotedIdentifiers:={true|false}, default value: {false} /// Causes eSql to follow the SQL-92 rules regarding quotation mark /// delimiting identifiers and literal strings. Identifiers delimited /// by double quotation marks can be either eSql reserved keywords /// or can contain characters not usually allowed by the eSql syntax /// rules for identifiers. /// ////// The default setting for this option is to interpret double quotes as literal strings. /// ///true or false ///Thrown if the option is changed after being consumed by Compile or Parse methods internal bool AllowQuotedIdentifiers { get { return _allowQuotedIdentifiers; } #if WHEN_NEEDED set { CheckIfReadOnly(); _allowQuotedIdentifiers = value; } #endif } private bool _allowQuotedIdentifiers = false; ////// IdentifierCaseSensitiveness:={CaseSensitiveness.CaseSensitive|CaseSensitiveness.CaseInsensitive}, Default:={CaseSensitiveness.CaseSensitive} /// Define the eSql compiler behavior regarding case sensitiveness of variables and aliases. /// ////// The default setting for this option is Case Sensitive. /// Types names are not affected by this option and depend on metadata service case-sensitivity rules. /// ///CaseSensitiveness.CaseSensitive or CaseSensitiveness.CaseInsensitive ///Thrown if the option is changed after being consumed by Compile or Parse methods internal CaseSensitiveness IdentifierCaseSensitiveness { get { return _identifierCaseSensitiveness; } #if WHEN_NEEDED set { CheckIfReadOnly(); _identifierCaseSensitiveness = value; } #endif } private CaseSensitiveness _identifierCaseSensitiveness = CaseSensitiveness.CaseInsensitive; ////// Defines OrderBy Collation specification. /// ////// The default is no collation specification. /// the COLLATION sub-clause in ORDER BY clause always overrides this property. In other words, this property takes effect only if /// there is no COLLATION sub-clause defined in a eSql ORDER BY Statement. /// ///Sort Collation name ///Thrown if the option is changed after being consumed by Compile or Parse methods internal string DefaultOrderByCollation { get { return _defaultOrderByCollation ?? String.Empty; } #if WHEN_NEEDED set { CheckIfReadOnly(); _defaultOrderByCollation = (null != value) ? value.Trim() : value; } #endif } private string _defaultOrderByCollation = null; ////// Makes options read-only /// ///internal ParserOptions MakeReadOnly() { #if WHEN_NEEDED _bReadOnly = true; #endif return this; } internal enum CompilationMode { /// /// Normal mode. Compiles all statements in the query. /// NormalMode, ////// View generation mode, optimizes compilation process to ignore uncessary eSql constructs. /// IMPORTANT NOTE: In this setting, the eSql query will be compiled in a restricted mode in /// which GROUP BY, HAVING and ORDER BY clauses will be short-circuited and ignored. If your /// view or query has *and* requires these constructs to be compiled, *do not use this option*. /// This optimization applies to all levels and sub-queries not only the topmost query. /// RestrictedViewGenerationMode, ////// Enables full eSql compilation without optimizations and enables type constructor with WITH RELATIONSHIP clause /// UserViewGenerationMode } ////// Sets/Gets eSQL parser compilation mode. /// internal CompilationMode ParserCompilationMode { get { return _compilationMode; } set { CheckIfReadOnly(); _compilationMode = value; } } private CompilationMode _compilationMode = CompilationMode.NormalMode; ////// Verify if setters are allowed. /// private void CheckIfReadOnly() { if (_bReadOnly) { throw EntityUtil.EntitySqlError(System.Data.Entity.Strings.PropertyCannotBeChangedAtThisTime); } } } #pragma warning restore 0419 } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Common.EntitySql { using System; using System.Globalization; // // disables XML doc overloads warning as error // #pragma warning disable 0419 ////// Represents eSql Text Compilation options. /// ParserOptions can be optionaly passed to CqlQuery.Compile or CqlQuery.Parse methods /// internal sealed class ParserOptions { //////
///Thrown if the properties are changed after being consumed by CqlQuery.Parse or CqlQuery.Compile ////// Once ParserOptions is passed and consumed by Compile or Parse Methods, it cannot be changed. /// If a setter is called after a ParserOptions instance is consumed by Parse or Compile methods, a EntityException will be raised. /// ///- ///
Compile Method - ///
Parse Method /// eSql enum Case Sensitivity values /// internal enum CaseSensitiveness { ////// Case Sensitive /// CaseSensitive, ////// Case Insensitive /// CaseInsensitive } private bool _bReadOnly = false; ////// AllowQuotedIdentifiers:={true|false}, default value: {false} /// Causes eSql to follow the SQL-92 rules regarding quotation mark /// delimiting identifiers and literal strings. Identifiers delimited /// by double quotation marks can be either eSql reserved keywords /// or can contain characters not usually allowed by the eSql syntax /// rules for identifiers. /// ////// The default setting for this option is to interpret double quotes as literal strings. /// ///true or false ///Thrown if the option is changed after being consumed by Compile or Parse methods internal bool AllowQuotedIdentifiers { get { return _allowQuotedIdentifiers; } #if WHEN_NEEDED set { CheckIfReadOnly(); _allowQuotedIdentifiers = value; } #endif } private bool _allowQuotedIdentifiers = false; ////// IdentifierCaseSensitiveness:={CaseSensitiveness.CaseSensitive|CaseSensitiveness.CaseInsensitive}, Default:={CaseSensitiveness.CaseSensitive} /// Define the eSql compiler behavior regarding case sensitiveness of variables and aliases. /// ////// The default setting for this option is Case Sensitive. /// Types names are not affected by this option and depend on metadata service case-sensitivity rules. /// ///CaseSensitiveness.CaseSensitive or CaseSensitiveness.CaseInsensitive ///Thrown if the option is changed after being consumed by Compile or Parse methods internal CaseSensitiveness IdentifierCaseSensitiveness { get { return _identifierCaseSensitiveness; } #if WHEN_NEEDED set { CheckIfReadOnly(); _identifierCaseSensitiveness = value; } #endif } private CaseSensitiveness _identifierCaseSensitiveness = CaseSensitiveness.CaseInsensitive; ////// Defines OrderBy Collation specification. /// ////// The default is no collation specification. /// the COLLATION sub-clause in ORDER BY clause always overrides this property. In other words, this property takes effect only if /// there is no COLLATION sub-clause defined in a eSql ORDER BY Statement. /// ///Sort Collation name ///Thrown if the option is changed after being consumed by Compile or Parse methods internal string DefaultOrderByCollation { get { return _defaultOrderByCollation ?? String.Empty; } #if WHEN_NEEDED set { CheckIfReadOnly(); _defaultOrderByCollation = (null != value) ? value.Trim() : value; } #endif } private string _defaultOrderByCollation = null; ////// Makes options read-only /// ///internal ParserOptions MakeReadOnly() { #if WHEN_NEEDED _bReadOnly = true; #endif return this; } internal enum CompilationMode { /// /// Normal mode. Compiles all statements in the query. /// NormalMode, ////// View generation mode, optimizes compilation process to ignore uncessary eSql constructs. /// IMPORTANT NOTE: In this setting, the eSql query will be compiled in a restricted mode in /// which GROUP BY, HAVING and ORDER BY clauses will be short-circuited and ignored. If your /// view or query has *and* requires these constructs to be compiled, *do not use this option*. /// This optimization applies to all levels and sub-queries not only the topmost query. /// RestrictedViewGenerationMode, ////// Enables full eSql compilation without optimizations and enables type constructor with WITH RELATIONSHIP clause /// UserViewGenerationMode } ////// Sets/Gets eSQL parser compilation mode. /// internal CompilationMode ParserCompilationMode { get { return _compilationMode; } set { CheckIfReadOnly(); _compilationMode = value; } } private CompilationMode _compilationMode = CompilationMode.NormalMode; ////// Verify if setters are allowed. /// private void CheckIfReadOnly() { if (_bReadOnly) { throw EntityUtil.EntitySqlError(System.Data.Entity.Strings.PropertyCannotBeChangedAtThisTime); } } } #pragma warning restore 0419 } // 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
- TabPageDesigner.cs
- Model3DGroup.cs
- FatalException.cs
- ContextStack.cs
- DecodeHelper.cs
- UIElement3D.cs
- ErrorTolerantObjectWriter.cs
- SettingsPropertyIsReadOnlyException.cs
- TableAdapterManagerGenerator.cs
- InvalidDataContractException.cs
- ProfileSettings.cs
- AttributeEmitter.cs
- DispatcherExceptionEventArgs.cs
- PropertyGridEditorPart.cs
- XmlDataSource.cs
- SourceLineInfo.cs
- UpdatePanelTrigger.cs
- Delegate.cs
- TypeToTreeConverter.cs
- SerializableReadOnlyDictionary.cs
- MissingMethodException.cs
- SqlCachedBuffer.cs
- GridViewColumnHeader.cs
- DataGridViewControlCollection.cs
- LinqExpressionNormalizer.cs
- Composition.cs
- KerberosTicketHashIdentifierClause.cs
- StopStoryboard.cs
- Native.cs
- Guid.cs
- DbProviderServices.cs
- MediaPlayer.cs
- RemoteCryptoRsaServiceProvider.cs
- TableAutomationPeer.cs
- IndexedSelectQueryOperator.cs
- IfAction.cs
- WindowsRichEditRange.cs
- AnnotationObservableCollection.cs
- PathGradientBrush.cs
- BridgeDataReader.cs
- RefreshEventArgs.cs
- RegistryKey.cs
- HostProtectionException.cs
- KeyInterop.cs
- SafeLibraryHandle.cs
- RelationshipConverter.cs
- ControlBuilderAttribute.cs
- PropertyMappingExceptionEventArgs.cs
- SafeTimerHandle.cs
- URLIdentityPermission.cs
- RowSpanVector.cs
- SafeRightsManagementQueryHandle.cs
- UrlMappingsSection.cs
- KerberosReceiverSecurityToken.cs
- PanelDesigner.cs
- PartManifestEntry.cs
- MobileControlsSectionHelper.cs
- TextBoxDesigner.cs
- XmlWriterSettings.cs
- RSAOAEPKeyExchangeDeformatter.cs
- RealizationDrawingContextWalker.cs
- SelectionEditor.cs
- ProbeRequestResponseAsyncResult.cs
- GlyphRun.cs
- FreezableCollection.cs
- Win32KeyboardDevice.cs
- FragmentQueryProcessor.cs
- EventPrivateKey.cs
- GridViewHeaderRowPresenter.cs
- SqlDuplicator.cs
- VisualBasicValue.cs
- InstanceNotFoundException.cs
- ArrayListCollectionBase.cs
- DefinitionUpdate.cs
- ManagementObjectSearcher.cs
- ObjectSet.cs
- HttpModulesSection.cs
- SystemNetworkInterface.cs
- XmlMtomReader.cs
- SequentialOutput.cs
- WebPartDeleteVerb.cs
- ConfigUtil.cs
- XmlElementList.cs
- StylusDownEventArgs.cs
- RepeaterItemEventArgs.cs
- XPathExpr.cs
- IIS7UserPrincipal.cs
- SamlAuthenticationStatement.cs
- CompilerParameters.cs
- MembershipPasswordException.cs
- RC2.cs
- VarRemapper.cs
- LogicalChannelCollection.cs
- GridViewCancelEditEventArgs.cs
- SkipQueryOptionExpression.cs
- UnsafeNativeMethods.cs
- InstanceDataCollectionCollection.cs
- OdbcParameterCollection.cs
- ToolStripHighContrastRenderer.cs
- SamlAttribute.cs