Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataEntity / System / Data / Common / EntitySql / ParserOptions.cs / 2 / 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
- TabletDevice.cs
- ValidationHelper.cs
- XmlDomTextWriter.cs
- XmlEncoding.cs
- WebPartConnectionsCancelEventArgs.cs
- HostElement.cs
- TimerEventSubscriptionCollection.cs
- DataControlCommands.cs
- CfgArc.cs
- RequestCachePolicy.cs
- FrameSecurityDescriptor.cs
- ClientApiGenerator.cs
- CheckBox.cs
- OdbcInfoMessageEvent.cs
- RowType.cs
- DependencyPropertyAttribute.cs
- StrokeCollectionDefaultValueFactory.cs
- FieldBuilder.cs
- ApplicationId.cs
- ListViewCancelEventArgs.cs
- XmlSchemaChoice.cs
- CharacterString.cs
- LeftCellWrapper.cs
- Scanner.cs
- StructuredProperty.cs
- FunctionDetailsReader.cs
- ChangePassword.cs
- BaseComponentEditor.cs
- Attributes.cs
- ProjectionNode.cs
- TimeManager.cs
- StreamResourceInfo.cs
- ParagraphResult.cs
- XXXInfos.cs
- URLString.cs
- StylusDownEventArgs.cs
- QueryAccessibilityHelpEvent.cs
- HtmlContainerControl.cs
- SqlLiftWhereClauses.cs
- WpfKnownMember.cs
- OutputCacheProfile.cs
- TextServicesProperty.cs
- DescendantBaseQuery.cs
- SemaphoreSecurity.cs
- CodeNamespaceImport.cs
- ActivityMarkupSerializationProvider.cs
- PagerSettings.cs
- WorkflowHostingResponseContext.cs
- DataComponentMethodGenerator.cs
- XPathChildIterator.cs
- PageThemeCodeDomTreeGenerator.cs
- XmlDocumentFragment.cs
- ProtocolsConfiguration.cs
- GACMembershipCondition.cs
- UiaCoreProviderApi.cs
- IntranetCredentialPolicy.cs
- MsmqHostedTransportConfiguration.cs
- DBParameter.cs
- GetPageNumberCompletedEventArgs.cs
- AVElementHelper.cs
- ClientSideProviderDescription.cs
- ArcSegment.cs
- ContextProperty.cs
- ZipIOFileItemStream.cs
- TemplateGroupCollection.cs
- ShaderRenderModeValidation.cs
- MissingFieldException.cs
- ClientRuntimeConfig.cs
- FixedPage.cs
- XPathDocumentBuilder.cs
- Messages.cs
- Exceptions.cs
- HttpCookieCollection.cs
- AppDomainManager.cs
- LoaderAllocator.cs
- UIHelper.cs
- ParseElement.cs
- ParameterExpression.cs
- ColorTransformHelper.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- OpCodes.cs
- DataGridTableCollection.cs
- DesignerForm.cs
- XmlQueryContext.cs
- SingleKeyFrameCollection.cs
- XamlReaderConstants.cs
- AnnotationAdorner.cs
- ControlBuilderAttribute.cs
- exports.cs
- ApplicationGesture.cs
- XsltOutput.cs
- xmlformatgeneratorstatics.cs
- FloaterParaClient.cs
- MasterPageParser.cs
- ParameterReplacerVisitor.cs
- HttpApplicationFactory.cs
- HtmlHistory.cs
- MemberAccessException.cs
- MsmqUri.cs
- XamlRtfConverter.cs