예제 #1
0
        public void Configure(QueryTypeBuilder <InanHistoryDto> builder)
        {
            builder.ToView("VW_INAN_HISTORY");

            builder.Property(p => p.IncidentDate)
            .HasColumnName("INCIDENT_DATE");

            builder.Property(p => p.IncidentTypeId)
            .HasColumnName("INCIDENT_TYPE_ID");

            builder.Property(p => p.RegionId)
            .HasColumnName("REGION_ID");

            builder.Property(p => p.DistrictId)
            .HasColumnName("DISTRICT_ID");

            builder.Property(p => p.Address)
            .HasColumnName("ADDRESS");

            builder.Property(p => p.MainReason)
            .HasColumnName("MAIN_REASON");

            builder.Property(p => p.IncidentAnnouncementId)
            .HasColumnName("INAN_ID");

            builder.Property(p => p.ChildId)
            .HasColumnName("CHILD_ID");

            builder.Property(p => p.ChildTypeId)
            .HasColumnName("CHILD_TYPE_ID");
        }
예제 #2
0
        /// <summary>
        /// 自动将视图名和列名转换大小写,部分特殊列需要手动处理
        /// [Automatically converts view and column names to case, and some special columns need to be handled manually]
        /// </summary>
        /// <param name="builder"></param>
        /// <param name="tableName"></param>
        /// <param name="schema"></param>
        /// <returns></returns>
        public static QueryTypeBuilder SetViewNameAndAllCloumName(
            this QueryTypeBuilder builder, string tableName = null, string schema = null)
        {
            builder.SetViewName(tableName, schema);

            return(builder.SetAllColumnName());
        }
예제 #3
0
        /// <summary>
        /// 设置所有列名,部分特殊列需要手动处理
        /// [Set all column names. Some special columns need to be handled manually]
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public static QueryTypeBuilder SetAllColumnName(this QueryTypeBuilder builder)
        {
            var entityProps = builder.Metadata.ClrType.GetProperties();

            // 字段
            var cloumnName = string.Empty;

            foreach (var prop in entityProps)
            {
                if (!prop.CheckPropIsColumn())
                {
                    continue;
                }

                // 设置字段列名
                var propertyBuilder = builder.Property(prop.PropertyType, prop.Name);
                propertyBuilder.SetColumnName(prop.Name);

                if (UseDefaultStringMaxLength && prop.CheckPropIsStringAndNoSetMaxLength())
                {
                    // 设置字符串列默认长度
                    propertyBuilder.HasMaxLength(DefaultStringMaxLength);
                }
            }

            return(builder);
        }
예제 #4
0
        private static QueryTypeBuilder <T> SetTempTableName <T>([NotNull] this QueryTypeBuilder <T> builder)
            where T : class
        {
            var tableName = "#" + typeof(T).DisplayName(false);

            return(builder.ToView(tableName));
        }
예제 #5
0
        /// <summary>
        ///     Configures the discriminator column used to identify which query type each row in a table represents
        ///     when an inheritance hierarchy is mapped to a single table in a relational database.
        /// </summary>
        /// <param name="queryTypeBuilder"> The builder for the query type being configured. </param>
        /// <returns> A builder that allows the discriminator column to be configured. </returns>
        public static DiscriminatorBuilder HasDiscriminator([NotNull] this QueryTypeBuilder queryTypeBuilder)
        {
            Check.NotNull(queryTypeBuilder, nameof(queryTypeBuilder));

            return(queryTypeBuilder.GetInfrastructure <InternalEntityTypeBuilder>()
                   .Relational(ConfigurationSource.Explicit).HasDiscriminator());
        }
 public void Configure(QueryTypeBuilder <GetHistoryResult> builder)
 {
     builder.Property(x => x.Id).HasColumnName("id");
     builder.Property(x => x.SearchedText).HasColumnName("search_text");
     builder.Property(x => x.Date).HasColumnName("date");
     builder.Property(x => x.UserId).HasColumnName("user_id");
 }
 public void Configure(QueryTypeBuilder <GetPostOrCommentResult> builder)
 {
     builder.Property(x => x.Id).HasColumnName("id");
     builder.Property(x => x.Body).HasColumnName("body");
     builder.Property(x => x.Score).HasColumnName("score");
     builder.Property(x => x.CreationDate).HasColumnName("creation_date");
     builder.Property(x => x.AuthorId).HasColumnName("author_id");
 }
예제 #8
0
 public void Configure(QueryTypeBuilder <GetAuthorResult> builder)
 {
     builder.Property(x => x.Id).HasColumnName("id");
     builder.Property(x => x.Name).HasColumnName("name");
     builder.Property(x => x.CreatedDate).HasColumnName("created_date");
     builder.Property(x => x.Location).HasColumnName("location");
     builder.Property(x => x.Age).HasColumnName("age");
 }
예제 #9
0
 /// <summary>Defines the mapping information for the typed view 'TblContactType1'</summary>
 /// <param name="config">The configuration to modify.</param>
 protected virtual void MapTblContactType1(QueryTypeBuilder <TblContactType1TypedViewRow> config)
 {
     config.ToView("tblContactType");
     config.Property(t => t.ContactTypeGuid).HasColumnName("contactType_Guid");
     config.Property(t => t.ContactType).HasColumnName("contactType").HasMaxLength(6);
     config.Property(t => t.ContactTypeCreateDate).HasColumnName("contactType_CreateDate");
     config.Property(t => t.ContactTypeUpdateDate).HasColumnName("contactType_updateDate");
 }
 public void Configure(QueryTypeBuilder <GetMarkedResult> builder)
 {
     builder.Property(x => x.UserId).HasColumnName("user_id");
     builder.Property(x => x.PostId).HasColumnName("post_id");
     builder.Property(x => x.Annotation).HasColumnName("text_annotation");
     builder.Property(x => x.CreationDate).HasColumnName("marked_creationdate");
     builder.Property(x => x.AnnotationDate).HasColumnName("annotation_creationdate");
 }
 public void Configure(QueryTypeBuilder <GetUserResult> builder)
 {
     builder.Property(x => x.Id).HasColumnName("id");
     builder.Property(x => x.Email).HasColumnName("email");
     builder.Property(x => x.Username).HasColumnName("username");
     builder.Property(x => x.Password).HasColumnName("password");
     builder.Property(x => x.Location).HasColumnName("location");
     builder.Property(x => x.Salt).HasColumnName("salt");
 }
예제 #12
0
        public void Configure(QueryTypeBuilder <OperatorModel> builder)
        {
            builder.Property(p => p.Id).HasColumnName("ID");
            builder.Property(p => p.Name).HasColumnName("NAME");

            builder.ToQuery(() => this.DbContext.Operators
                            .FromSql("select DISTINCT id,supplier_name as Name from table(lcr_tg_import_iapi.get_carrier_lst)")
                            );
        }
예제 #13
0
 /// <summary>Defines the mapping information for the typed view 'TblUser1'</summary>
 /// <param name="config">The configuration to modify.</param>
 protected virtual void MapTblUser1(QueryTypeBuilder <TblUser1TypedViewRow> config)
 {
     config.ToView("tblUser");
     config.Property(t => t.UserGuid).HasColumnName("user_GUID");
     config.Property(t => t.UserName).HasColumnName("userName").HasMaxLength(30).IsRequired();
     config.Property(t => t.EmailAddress).HasColumnName("emailAddress").HasMaxLength(40).IsRequired();
     config.Property(t => t.Password).HasMaxLength(100);
     config.Property(t => t.UserCreateDate).HasColumnName("user_createDate");
     config.Property(t => t.UserUpdateDate).HasColumnName("user_updateDate");
 }
예제 #14
0
 /// <summary>Defines the mapping information for the typed view 'Tblcontact1'</summary>
 /// <param name="config">The configuration to modify.</param>
 protected virtual void MapTblcontact1(QueryTypeBuilder <Tblcontact1TypedViewRow> config)
 {
     config.ToView("tblcontact");
     config.Property(t => t.ContactGuid).HasColumnName("contact_Guid");
     config.Property(t => t.UserGuid).HasColumnName("user_Guid");
     config.Property(t => t.ContactType).HasColumnName("contactType");
     config.Property(t => t.ContactValue).HasColumnName("contactValue").HasMaxLength(10).IsRequired();
     config.Property(t => t.IsActive).HasColumnName("isActive").HasMaxLength(1).IsRequired();
     config.Property(t => t.ContactCreateDate).HasColumnName("contact_createDate");
     config.Property(t => t.ContactUpdateDate).HasColumnName("contact_updateDate");
 }
예제 #15
0
        /// <summary>
        ///     Configures the discriminator column used to identify which query type each row in a table represents
        ///     when an inheritance hierarchy is mapped to a single table in a relational database.
        /// </summary>
        /// <typeparam name="TDiscriminator"> The type of values stored in the discriminator column. </typeparam>
        /// <param name="queryTypeBuilder"> The builder for the query type being configured. </param>
        /// <param name="name"> The name of the discriminator column. </param>
        /// <returns> A builder that allows the discriminator column to be configured. </returns>
        public static DiscriminatorBuilder <TDiscriminator> HasDiscriminator <TDiscriminator>(
            [NotNull] this QueryTypeBuilder queryTypeBuilder,
            [NotNull] string name)
        {
            Check.NotNull(queryTypeBuilder, nameof(queryTypeBuilder));
            Check.NotEmpty(name, nameof(name));

            return(new DiscriminatorBuilder <TDiscriminator>(
                       queryTypeBuilder.GetInfrastructure <InternalEntityTypeBuilder>()
                       .Relational(ConfigurationSource.Explicit).HasDiscriminator(name, typeof(TDiscriminator))));
        }
예제 #16
0
        /// <summary>
        ///     Configures the discriminator column used to identify which query type each row in a table represents
        ///     when an inheritance hierarchy is mapped to a single table in a relational database.
        /// </summary>
        /// <typeparam name="TQuery"> The query type being configured. </typeparam>
        /// <typeparam name="TDiscriminator"> The type of values stored in the discriminator column. </typeparam>
        /// <param name="queryTypeBuilder"> The builder for the query type being configured. </param>
        /// <param name="propertyExpression">
        ///     A lambda expression representing the property to be used as the discriminator (
        ///     <c>blog => blog.Discriminator</c>).
        /// </param>
        /// <returns> A builder that allows the discriminator column to be configured. </returns>
        public static DiscriminatorBuilder <TDiscriminator> HasDiscriminator <TQuery, TDiscriminator>(
            [NotNull] this QueryTypeBuilder <TQuery> queryTypeBuilder,
            [NotNull] Expression <Func <TQuery, TDiscriminator> > propertyExpression)
            where TQuery : class
        {
            Check.NotNull(queryTypeBuilder, nameof(queryTypeBuilder));
            Check.NotNull(propertyExpression, nameof(propertyExpression));

            return(new DiscriminatorBuilder <TDiscriminator>(
                       queryTypeBuilder.GetInfrastructure <InternalEntityTypeBuilder>()
                       .Relational(ConfigurationSource.Explicit).HasDiscriminator(propertyExpression.GetPropertyAccess())));
        }
예제 #17
0
        /// <summary>
        ///     Configures the view or table that the view maps to when targeting a relational database.
        /// </summary>
        /// <param name="queryTypeBuilder"> The builder for the query type being configured. </param>
        /// <param name="name"> The name of the view or table. </param>
        /// <returns> The same builder instance so that multiple calls can be chained. </returns>
        public static QueryTypeBuilder ToView(
            [NotNull] this QueryTypeBuilder queryTypeBuilder,
            [CanBeNull] string name)
        {
            Check.NotNull(queryTypeBuilder, nameof(queryTypeBuilder));
            Check.NullButNotEmpty(name, nameof(name));

            queryTypeBuilder.GetInfrastructure <InternalEntityTypeBuilder>()
            .Relational(ConfigurationSource.Explicit)
            .ToTable(name);

            return(queryTypeBuilder);
        }
예제 #18
0
 /// <summary>Defines the mapping information for the typed view 'Tbladdress1'</summary>
 /// <param name="config">The configuration to modify.</param>
 protected virtual void MapTbladdress1(QueryTypeBuilder <Tbladdress1TypedViewRow> config)
 {
     config.ToView("tbladdress");
     config.Property(t => t.AddressGuid).HasColumnName("address_Guid");
     config.Property(t => t.UserGuid).HasColumnName("user_Guid");
     config.Property(t => t.Street1).HasColumnName("street1").HasMaxLength(20).IsRequired();
     config.Property(t => t.Street2).HasColumnName("street2").HasMaxLength(20);
     config.Property(t => t.City).HasMaxLength(10);
     config.Property(t => t.State).HasColumnName("state").HasMaxLength(2).IsRequired();
     config.Property(t => t.PostalCode).HasColumnName("postal_code");
     config.Property(t => t.AddressCreateDate).HasColumnName("address_createDate");
     config.Property(t => t.AddressUpdateDate).HasColumnName("address_updateDate");
 }
예제 #19
0
 /// <summary>Defines the mapping information for the typed view 'TblRideRequest1'</summary>
 /// <param name="config">The configuration to modify.</param>
 protected virtual void MapTblRideRequest1(QueryTypeBuilder <TblRideRequest1TypedViewRow> config)
 {
     config.ToView("tblRideRequest");
     config.Property(t => t.RideRequestGuid).HasColumnName("rideRequest_GUID");
     config.Property(t => t.RequestFromGuid).HasColumnName("requestFrom_GUID");
     config.Property(t => t.RequestToGuid).HasColumnName("requestTo_GUID");
     config.Property(t => t.RequestStartDateTime).HasColumnName("requestStartDateTime");
     config.Property(t => t.RequestEndDateTime).HasColumnName("requestEndDateTime");
     config.Property(t => t.RequestStartAddressGuid).HasColumnName("requestStartAddress_Guid");
     config.Property(t => t.RequestEndAddressGuid).HasColumnName("requestEndAddress_Guid");
     config.Property(t => t.RequestCreateDate).HasColumnName("request_createDate");
     config.Property(t => t.RequestUpdateDate).HasColumnName("request_updateDate");
 }
예제 #20
0
 /// <summary>Defines the mapping information for the typed view 'TblRide1'</summary>
 /// <param name="config">The configuration to modify.</param>
 protected virtual void MapTblRide1(QueryTypeBuilder <TblRide1TypedViewRow> config)
 {
     config.ToView("tblRide");
     config.Property(t => t.RideGuid).HasColumnName("ride_GUID");
     config.Property(t => t.RideFromGuid).HasColumnName("rideFrom_GUID");
     config.Property(t => t.RideToGuid).HasColumnName("rideTo_GUID");
     config.Property(t => t.RideStartDateTime).HasColumnName("rideStartDateTime");
     config.Property(t => t.RideEndDateTime).HasColumnName("rideEndDateTime");
     config.Property(t => t.RideStartAddressGuid).HasColumnName("rideStartAddress_Guid");
     config.Property(t => t.RideEndAddressGuid).HasColumnName("rideEndAddress_Guid");
     config.Property(t => t.RideCreateDate).HasColumnName("ride_createDate");
     config.Property(t => t.RideUpdateDate).HasColumnName("ride_updateDate");
 }
예제 #21
0
        public static QueryTypeBuilder <T> ProtectSensitiveInformation <T>(this QueryTypeBuilder <T> queryTypeBuilder) where T : class
        {
            foreach (PropertyInfo propertyInfo in typeof(T).GetProperties())
            {
                SensitiveInformationAttribute sensitiveInformationAttribute = propertyInfo.GetCustomAttributes <SensitiveInformationAttribute>().SingleOrDefault();
                if (propertyInfo.DeclaringType == typeof(T) && sensitiveInformationAttribute != null)
                {
                    IMutableProperty mutableProperty = queryTypeBuilder.Property(propertyInfo.Name).Metadata;
                    mutableProperty.SetValueConverter(SensitiveInformationConverter.Create(sensitiveInformationAttribute.KeyName));
                }
            }

            return(queryTypeBuilder);
        }
        public void Configure(QueryTypeBuilder <CandleMonitorFeeds> builder)
        {
            builder.Property(e => e.ProductId)
            .HasConversion <string>();

            builder.Property(e => e.Granularity)
            .HasConversion <string>();

            builder.Property(e => e.TradeFromUtc)
            .HasColumnName("trade_from_utc")
            .HasConversion(v => v, v => DateTime.SpecifyKind(v.Value, DateTimeKind.Utc));

            builder.Property(e => e.HasOverlay)
            .HasColumnName("has_overlay")
            .HasConversion <int>();
        }
예제 #23
0
        /// <summary>
        /// 设置视图名称和Schema [Set the view name and Schema]
        /// 优先级:
        /// * 传入的 tableName 和 schema
        /// * 实体标记的 TableAttribute
        /// * 实体名称, schema 不设置
        /// </summary>
        /// <param name="builder"></param>
        /// <param name="viewName"></param>
        /// <param name="schema"></param>
        /// <returns></returns>
        public static QueryTypeBuilder SetViewName(
            this QueryTypeBuilder builder,
            string viewName = null,
            string schema   = null)
        {
            if (!string.IsNullOrWhiteSpace(viewName))
            {
                return(RelationalQueryTypeBuilderExtensions.ToView(builder, C(viewName), C(schema)));
            }

            var tableAttr = builder.Metadata.ClrType.GetTableAttribute();

            if (tableAttr != null)
            {
                return(RelationalQueryTypeBuilderExtensions.ToView(builder, C(tableAttr.Name), C(tableAttr.Schema)));
            }
            return(RelationalQueryTypeBuilderExtensions.ToView(builder, C(builder.Metadata.ClrType.Name)));
        }
        public void Configure(QueryTypeBuilder <VWAtorFilme> builder)
        {
            builder
            .ToView <VWAtorFilme>("VW_TOP_ATORES_FILMES");

            builder
            .Property(vw => vw.Id).HasColumnName("actor_id");

            builder
            .Property(vw => vw.PrimeiroNome).HasColumnName("first_name");

            builder
            .Property(vw => vw.UltimoNome).HasColumnName("last_name");

            builder
            .Property(vw => vw.QuantidadeFilmesRealizados).HasColumnName("count_film");

            builder
            .Property(vw => vw.DataAlteracao).HasColumnName("last_update");
        }
        public void Configure(QueryTypeBuilder <UploadHistoryQueryModel> builder)
        {
            builder.Property(p => p.Id).HasColumnName("ID").HasDefaultValue();
            builder.Property(p => p.UserId).HasColumnName("USERID");
            builder.Property(p => p.Firstname).HasColumnName("FIRSTNAME");
            builder.Property(p => p.Lastname).HasColumnName("LASTNAME");
            builder.Property(p => p.SwitchId).HasColumnName("SWITCHID");
            builder.Property(p => p.SwitchName).HasColumnName("SWITCHNAME");
            builder.Property(p => p.DateUpload).HasColumnName("DATEUPLOAD");
            builder.Property(p => p.FileName).HasColumnName("FILENAME");
            builder.Property(p => p.RowsAffected).HasColumnName("ROWSAFFECTED");
            builder.Property(p => p.Step).HasColumnName("STEP");

            builder.ToQuery(() => this.DbContext.UploadHistoryResults.FromSql(@"
        SELECT
          uh.ID,
          uh.USERID,
          u.FIRSTNAME,
          u.LASTNAME,
          uh.SWITCHID,
          s.Name as SWITCHNAME,
          uh.DATEUPLOAD,
          uh.FILENAME,
          uh.ROWSAFFECTED,
          uh.STEP
        FROM
          UPLOAD_HISTORY uh
          INNER JOIN
            (select DISTINCT Id, first_name as Firstname, last_name as Lastname from table(lcr_protocol_iapi.get_user_lst(0))) u
            ON
              uh.UserId = u.Id
          INNER JOIN
            (select DISTINCT Id, Name from table(lcr_tg_import_iapi.get_switch_lst)) s
            ON
              uh.SwitchId = s.Id
      "));
        }
        public void Configure(QueryTypeBuilder <CustomerCallHistoryDto> builder)
        {
            builder.ToView("VW_INAN_CUSTOMER_CALL_HISTORY");

            builder.Property(p => p.TelephoneNumber).HasColumnName("TELEPHONE_NUMBER");
            builder.Property(p => p.CallDate).HasColumnName("CALL_DATE");
            builder.Property(p => p.CallerTelephone).HasColumnName("CALLER_TELEPHONE");
            builder.Property(p => p.CustomerFirstName).HasColumnName("CUSTOMER_FIRST_NAME");
            builder.Property(p => p.CustomerLastName).HasColumnName("CUSTOMER_LAST_NAME");
            builder.Property(p => p.CustomerMobileNumber).HasColumnName("CUSTOMER_MOBILE_NUMBER");
            builder.Property(p => p.CustomerTelNumber).HasColumnName("CUSTOMER_TELEPHONE");
            builder.Property(p => p.CallTypeId).HasColumnName("CALL_TYPE_ID");
            builder.Property(p => p.BillId).HasColumnName("BILL_ID");
            builder.Property(p => p.IdentityCode).HasColumnName("IDENTITY_CODE");
            builder.Property(p => p.SubscribeCode).HasColumnName("SUBSCRIBE_CODE");
            builder.Property(p => p.DigitalCode).HasColumnName("DIGITAL_CODE");
            builder.Property(p => p.CustomerAddress).HasColumnName("CUSTOMER_ADDRESS");
            builder.Property(p => p.CustomerPostalCode).HasColumnName("CUSTOMER_POSTAL_CODE");
            builder.Property(p => p.IncidentDate).HasColumnName("INCIDENT_DATE");
            builder.Property(p => p.IncidentTypeId).HasColumnName("INCIDENT_TYPE_ID");
            builder.Property(p => p.RegionId).HasColumnName("REGION_ID");
            builder.Property(p => p.DistrictId).HasColumnName("DISTRICT_ID");
            builder.Property(p => p.PoweroffDescription).HasColumnName("POWEROFF_DESCRIPTION");
            builder.Property(p => p.PoweroffReasonId).HasColumnName("POWEROFF_REASON_ID");
            builder.Property(p => p.NetworkDisadvantageDescription).HasColumnName("NETWORK_DISADVANTAGE_DESCRIPTION");
            builder.Property(p => p.NetworkDisadvantageAddress).HasColumnName("NETWORK_DISADVANTAGE_ADDRESS");
            builder.Property(p => p.NetworkDisadvantageReasonId).HasColumnName("NETWORK_DISADVANTAGE_REASON_ID");
            builder.Property(p => p.OverallPassageLightingDescription).HasColumnName("OVERALL_PASSAGE_DESCRIPTION");
            builder.Property(p => p.OverallPassageLightingAddress).HasColumnName("OVERALL_PASSAGE_ADDRESS");
            builder.Property(p => p.OverallPassageLightingReasonId).HasColumnName("OVERALL_PASSAGE_REASON_ID");
            builder.Property(p => p.PartialPassageLightingDescription).HasColumnName("PARTIAL_PASSAGE_DESCRIPTION");
            builder.Property(p => p.PartialPassageLightingAddress).HasColumnName("PARTIAL_PASSAGE_ADDRESS");
            builder.Property(p => p.PartialPassageLightingReasonId).HasColumnName("PARTIAL_PASSAGE_REASON_ID");
            builder.Property(p => p.IrrelevantCallDescription).HasColumnName("IRRELEVANT_CALL_DESCRIPTION");
            builder.Property(p => p.IrrelevantCallReasonId).HasColumnName("IRRELEVANT_CALL_REASON_ID");
        }
 /// <summary>
 /// Configures the query type
 /// </summary>
 /// <param name="builder">The builder to be used to configure the query type</param>
 public virtual void Configure(QueryTypeBuilder <TQuery> builder)
 {
     //add custom configuration
     PostConfigure(builder);
 }
 /// <summary>
 /// Developers can override this method in custom partial classes in order to add some custom configuration code
 /// </summary>
 /// <param name="builder">The builder to be used to configure the query</param>
 protected virtual void PostConfigure(QueryTypeBuilder <TQuery> builder)
 {
 }
        public void Configure(QueryTypeBuilder <ImportResultQueryModel> builder)
        {
            builder.Property(p => p.Id).HasColumnName("ID");
            builder.Property(p => p.DataRowId).HasColumnName("DARAROWID");
            builder.Property(p => p.UploadHistoryId).HasColumnName("UPLOADHISTORYID");
            builder.Property(p => p.ChannelBundleName).HasColumnName("TRUNKGROUPNAME");
            builder.Property(p => p.DirectionType).HasColumnName("TRUNKGROUPTYPE");
            builder.Property(p => p.Direction).HasColumnName("DIRECTION");
            builder.Property(p => p.OperatorsNetworkConnectionLvl).HasColumnName("OPERATORSNETWORKCONNECTLVL");
            builder.Property(p => p.PairedSwitchOperatorFullName).HasColumnName("PAIREDSWITCHOPERATORFULLNAME");
            builder.Property(p => p.RTNetworkConnectionLevel).HasColumnName("RTNETWORKCONNECTIONLEVEL");
            builder.Property(p => p.SwitchOperatorName).HasColumnName("SWITCHOPERATORNAME");
            builder.Property(p => p.ValidFrom).HasColumnName("VALIDFROM");
            builder.Property(p => p.ValidUntil).HasColumnName("VALIDUNTIL");
            builder.Property(p => p.FormatFlags).HasColumnName("FORMATFLAGS");
            builder.Property(p => p.LogicFlags).HasColumnName("LOGICFLAGS");
            builder.Property(p => p.FileOperatorId).HasColumnName("FILE_TGOPERATORID");
            builder.Property(p => p.FileDirection).HasColumnName("FILE_DIRECTION");
            builder.Property(p => p.FileDateOpen).HasColumnName("FILE_VALIDFROM");
            builder.Property(p => p.FileDateClose).HasColumnName("FILE_VALIDUNTIL");
            builder.Property(p => p.FileOperatorName).HasColumnName("FILE_OPERATORNAME");
            builder.Property(p => p.LCRTGID).HasColumnName("LCR_TGID");
            builder.Property(p => p.LCROperatorId).HasColumnName("LCR_TGOPERATORID");
            builder.Property(p => p.LCRDirection).HasColumnName("LCR_DIRECTION");
            builder.Property(p => p.LCRDateOpen).HasColumnName("LCR_VALIDFROM");
            builder.Property(p => p.LCRDateClose).HasColumnName("LCR_VALIDUNTIL");
            builder.Property(p => p.LCROperatorName).HasColumnName("LCR_OPERATORNAME");
            builder.Property(p => p.Approved).HasColumnName("APPROVED");
            builder.Property(p => p.Excluded).HasColumnName("EXCLUDED");

            builder.ToQuery(() => this.DbContext.ImportResults
                            .FromSql(@"
          SELECT
	          urd.ID,
            urd.DARAROWID,
	          urd.UPLOADHISTORYID,
	          urd.TRUNKGROUPNAME,
	          urd.TRUNKGROUPTYPE,
            urd.DIRECTION,
	          urd.OPERATORSNETWORKCONNECTLVL,
	          urd.PAIREDSWITCHOPERATORFULLNAME,
	          urd.RTNETWORKCONNECTIONLEVEL,
	          urd.SWITCHOPERATORNAME,
            urd.VALIDFROM,
            urd.VALIDUNTIL,
	          ufe.ERRORFLAGS as FORMATFLAGS,
	          umd.Flags as LOGICFLAGS,
	          umd.FILE_TGOPERATORID,
	          umd.FILE_DIRECTION,
	          umd.FILE_VALIDFROM,
	          umd.FILE_VALIDUNTIL,
	          fop.NAME as FILE_OPERATORNAME,
	          umd.LCR_TGID,
	          umd.LCR_TGOPERATORID,
	          umd.LCR_DIRECTION,
	          umd.LCR_VALIDFROM,
	          umd.LCR_VALIDUNTIL,
	          lop.NAME as LCR_OPERATORNAME,
	          umd.APPROVED,
	          umd.EXCLUDED
          FROM
	          UPLOAD_RAWDATA urd
	          LEFT JOIN
		          UPLOAD_FORMATERRORS ufe
		          ON
			          urd.ID = ufe.UPLOADRAWDATAID
	          LEFT JOIN
		          UPLOAD_MAPPEDDATA umd
		          ON
			          urd.ID = umd.UPLOADRAWDATAID
	          LEFT JOIN
		          (select DISTINCT ID, supplier_name as NAME from table(lcr_tg_import_iapi.get_carrier_lst)) fop
		          ON
			          umd.FILE_TGOPERATORID = fop.ID
	          LEFT JOIN
		          (select DISTINCT ID, supplier_name as NAME from table(lcr_tg_import_iapi.get_carrier_lst)) lop
		          ON
			          umd.LCR_TGOPERATORID = lop.ID
        "));
        }
예제 #30
0
 public override void Configure(QueryTypeBuilder <BlogsView> builder)
 {
     builder.ToView("BolgViews");
     base.Configure(builder);
 }