internal void MergeCollationSettings(ErrorContext errorContext, string dataSourceType, string cultureName, bool caseSensitive, bool accentSensitive, bool kanatypeSensitive, bool widthSensitive) { if (!NeedAutoDetectCollation()) { return; } uint lcid = DataSetValidator.LOCALE_SYSTEM_DEFAULT; if (cultureName != null) { try { lcid = (uint)CultureInfo.GetCultureInfo(cultureName).LCID; } catch (Exception) { errorContext?.Register(ProcessingErrorCode.rsInvalidCollationCultureName, Severity.Warning, Microsoft.ReportingServices.ReportProcessing.ObjectType.DataSet, m_name, dataSourceType, cultureName); } } if (DataSetValidator.LOCALE_SYSTEM_DEFAULT == m_lcid) { m_lcid = lcid; } m_accentSensitivity = MergeSensitivity(m_accentSensitivity, accentSensitive); m_caseSensitivity = MergeSensitivity(m_caseSensitivity, caseSensitive); m_kanatypeSensitivity = MergeSensitivity(m_kanatypeSensitivity, kanatypeSensitive); m_widthSensitivity = MergeSensitivity(m_widthSensitivity, widthSensitive); }
public void MergeCollationSettings(ErrorContext errorContext, string dataSourceType, string cultureName, bool caseSensitive, bool accentSensitive, bool kanatypeSensitive, bool widthSensitive) { if (this.NeedAutoDetectCollation()) { uint lcid = DataSetValidator.LOCALE_SYSTEM_DEFAULT; if (cultureName != null) { try { CultureInfo cultureInfo = CultureInfo.GetCultureInfo(cultureName); lcid = (uint)cultureInfo.LCID; } catch (Exception) { if (errorContext != null) { errorContext.Register(ProcessingErrorCode.rsInvalidCollationCultureName, Severity.Warning, AspNetCore.ReportingServices.ReportProcessing.ObjectType.DataSet, this.m_name, dataSourceType, cultureName); } } } if (DataSetValidator.LOCALE_SYSTEM_DEFAULT == this.m_lcid) { this.m_lcid = lcid; } this.m_accentSensitivity = this.MergeSensitivity(this.m_accentSensitivity, accentSensitive); this.m_caseSensitivity = this.MergeSensitivity(this.m_caseSensitivity, caseSensitive); this.m_kanatypeSensitivity = this.MergeSensitivity(this.m_kanatypeSensitivity, kanatypeSensitive); this.m_widthSensitivity = this.MergeSensitivity(this.m_widthSensitivity, widthSensitive); } }
private DataSet.TriState MergeSensitivity(DataSet.TriState current, bool detectedValue) { if (current != 0) { return(current); } if (detectedValue) { return(DataSet.TriState.True); } return(DataSet.TriState.False); }
public void Deserialize(IntermediateFormatReader reader) { reader.RegisterDeclaration(m_Declaration); while (reader.NextMember()) { switch (reader.CurrentMember.MemberName) { case MemberName.Name: m_name = reader.ReadString(); break; case MemberName.Fields: m_fields = reader.ReadGenericListOfRIFObjects <Field>(); break; case MemberName.Query: m_query = (ReportQuery)reader.ReadRIFObject(); break; case MemberName.SharedDataSetQuery: m_sharedDataSetQuery = (SharedDataSetQuery)reader.ReadRIFObject(); break; case MemberName.Collation: m_collation = reader.ReadString(); break; case MemberName.CollationCulture: m_collationCulture = reader.ReadString(); break; case MemberName.LCID: m_lcid = reader.ReadUInt32(); break; case MemberName.CaseSensitivity: m_caseSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.AccentSensitivity: m_accentSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.KanatypeSensitivity: m_kanatypeSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.WidthSensitivity: m_widthSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.Filters: m_filters = reader.ReadGenericListOfRIFObjects <Filter>(); break; case MemberName.InterpretSubtotalsAsDetails: m_interpretSubtotalsAsDetails = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.CatalogID: m_catalogID = reader.ReadGuid(); break; case MemberName.NonCalculatedFieldCount: m_nonCalculatedFieldCount = reader.ReadInt32(); break; case MemberName.CompiledCode: m_compiledCode = reader.ReadByteArray(); break; case MemberName.CompiledCodeGeneratedWithRefusedPermissions: m_compiledCodeGeneratedWithRefusedPermissions = reader.ReadBoolean(); break; case MemberName.ExprHostID: m_exprHostID = reader.ReadInt32(); break; case MemberName.ExprHostAssemblyID: m_exprHostAssemblyId = reader.ReadGuid(); break; case MemberName.NullsAsBlanks: m_nullsAsBlanks = reader.ReadBoolean(); break; default: Global.Tracer.Assert(condition: false, string.Empty); break; } } }
public override void Deserialize(IntermediateFormatReader reader) { base.Deserialize(reader); reader.RegisterDeclaration(m_Declaration); while (reader.NextMember()) { switch (reader.CurrentMember.MemberName) { case MemberName.RecordSetSize: m_recordSetSize = reader.ReadInt32(); break; case MemberName.CommandText: m_commandText = reader.ReadString(); break; case MemberName.RewrittenCommandText: m_rewrittenCommandText = reader.ReadString(); break; case MemberName.Fields: m_fieldInfos = reader.ReadArrayOfRIFObjects <FieldInfo>(); break; case MemberName.CaseSensitivity: m_caseSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.AccentSensitivity: m_accentSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.KanatypeSensitivity: m_kanatypeSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.WidthSensitivity: m_widthSensitivity = (DataSet.TriState)reader.ReadEnum(); break; case MemberName.LCID: m_lcid = reader.ReadUInt32(); break; case MemberName.TablixProcessingComplete: m_oldSnapshotTablixProcessingComplete = reader.ReadBoolean(); break; case MemberName.DataChunkName: m_dataChunkName = reader.ReadString(); break; case MemberName.LookupResults: m_lookupResults = reader.ReadListOfRIFObjects <List <LookupObjResult> >(); break; case MemberName.ExecutionTime: m_executionTime = reader.ReadDateTime(); break; default: Global.Tracer.Assert(condition: false); break; } } }