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
- SchemaElementDecl.cs
- CryptoHelper.cs
- ProviderCommandInfoUtils.cs
- DeferredSelectedIndexReference.cs
- CheckBoxBaseAdapter.cs
- UIElement3DAutomationPeer.cs
- MemoryStream.cs
- SiteMembershipCondition.cs
- HyperLink.cs
- FusionWrap.cs
- WrappedIUnknown.cs
- SystemDiagnosticsSection.cs
- Module.cs
- StylusDownEventArgs.cs
- ObjectListDesigner.cs
- MetadataCache.cs
- CacheRequest.cs
- GeometryDrawing.cs
- X509ChainElement.cs
- DbLambda.cs
- ProxyElement.cs
- DeviceContext2.cs
- DrawingImage.cs
- WebGetAttribute.cs
- BatchServiceHost.cs
- MouseCaptureWithinProperty.cs
- SpeechEvent.cs
- Crypto.cs
- BufferedOutputStream.cs
- BlockUIContainer.cs
- ValidationRule.cs
- ChameleonKey.cs
- httpserverutility.cs
- RelationshipNavigation.cs
- VectorCollection.cs
- WindowsFormsSynchronizationContext.cs
- TypefaceMap.cs
- AuthenticateEventArgs.cs
- IISMapPath.cs
- Regex.cs
- RegexInterpreter.cs
- TrailingSpaceComparer.cs
- NamespaceInfo.cs
- CodeDelegateCreateExpression.cs
- RegexCompiler.cs
- WindowsAltTab.cs
- PrintControllerWithStatusDialog.cs
- XPathNode.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- DPAPIProtectedConfigurationProvider.cs
- EventPrivateKey.cs
- CodeParameterDeclarationExpressionCollection.cs
- KeyTimeConverter.cs
- ToolBar.cs
- TextCompositionManager.cs
- TypeLibraryHelper.cs
- CompressStream.cs
- CompiledELinqQueryState.cs
- Effect.cs
- DataObject.cs
- Psha1DerivedKeyGeneratorHelper.cs
- HtmlInputText.cs
- Int64Animation.cs
- InkSerializer.cs
- XmlSchemaInferenceException.cs
- KnownAssemblyEntry.cs
- GridViewEditEventArgs.cs
- _CookieModule.cs
- FileUpload.cs
- XmlSchemaParticle.cs
- AxHostDesigner.cs
- TargetInvocationException.cs
- XmlSchemaGroup.cs
- WebContentFormatHelper.cs
- ToolBarButton.cs
- RayHitTestParameters.cs
- ViewgenContext.cs
- ImageListUtils.cs
- InlinedLocationReference.cs
- Stylus.cs
- DictionaryBase.cs
- GenericIdentity.cs
- _ProxyRegBlob.cs
- Odbc32.cs
- Base64Stream.cs
- RSAOAEPKeyExchangeFormatter.cs
- NameService.cs
- DataObject.cs
- TemplateComponentConnector.cs
- ServicesUtilities.cs
- EncryptedPackageFilter.cs
- DragDeltaEventArgs.cs
- SqlUserDefinedTypeAttribute.cs
- _IPv6Address.cs
- SqlBulkCopyColumnMappingCollection.cs
- TextFormatterContext.cs
- SchemaTypeEmitter.cs
- DataGridViewRowStateChangedEventArgs.cs
- CatalogZoneBase.cs
- PaperSize.cs