简体   繁体   中英

decimal to double

I have something like this.....

foreach (var pupilAvg in pupilsAvgs) {
    Report_TeachersPosition teacher = new Report_TeachersPosition();
    teacher.ORG_ID = pupilAvg.ORG_ID;
    teacher.Yearcode = pupilAvg.YearCode;
    teacher.Teacher_K5 = pupilAvg.PupilsAvg_K5 / ratio.ClassKto5;
    teacher.Teacher_6to8 = pupilAvg.PupilsAvg_6to8 / ratio.Class6to8;
    teacher.Teacher_9to12 = pupilAvg.PupilsAvg_9to12 / ratio.Class9to12;
    teacher.Teacher_EPSFTE = teacher.Teacher_K5 + teacher.Teacher_6to8 
                             + teacher.Teacher_9to12;
    teacher.Teacher_Adjusted_EPSSalary = teacher.Teacher_SAUEPSMatrix
                                         * teacher.Teacher_Ratio;
    teacher.Teacher_ElementarySalary = teacher.Teacher_Adjusted_EPSSalary 
                                       * entities.Report_Attending_Pupils_Avg.ToList()
                                       .Where(x => x.ORG_ID == pupilAvg.ORG_ID 
                                       && x.YearCode.Equals("" + yearCode))
                                       .FirstOrDefault().PupilsAvg_K8_Percentage;
    teacher.Teacher_SecondarySalary = teacher.Teacher_Adjusted_EPSSalary 
                                      * entities.Report_Attending_Pupils_Avg.ToList()
                                      .Where(x => x.ORG_ID == pupilAvg.ORG_ID 
                                      && x.YearCode.Equals("" + yearCode))
                                      .FirstOrDefault().PupilsAvg_9to12_Percentage;
}

but the class is...

public partial class Report_TeachersPosition {
        public int ORG_ID { get; set; }
        public Nullable<int> Yearcode { get; set; }
        public Nullable<decimal> Teacher_K5 { get; set; }
        public Nullable<decimal> Teacher_6to8 { get; set; }
        public Nullable<decimal> Teacher_K8 { get; set; }
        public Nullable<decimal> Teacher_9to12 { get; set; }
        public Nullable<decimal> Teacher_EPSFTE { get; set; }
        public Nullable<decimal> Teacher_ActualFTE { get; set; }
        public Nullable<decimal> Teacher_Ratio { get; set; }
        public Nullable<decimal> Teacher_TotalSalary { get; set; }
        public Nullable<decimal> Teacher_ElementarySalary { get; set; }
        public Nullable<decimal> Teacher_SecondarySalary { get; set; }
        public Nullable<decimal> Teacher_SAUEPSMatrix { get; set; }
        public Nullable<decimal> Teacher_Adjusted_EPSSalary { get; set; }
}

the problem is... In the class Report_TeachersPosition , I have all decimal values from database . And I want them to be in double . So i change it into double and save it. but when I open it again, Its back to decimal .. I dont know why.. Can somebody help????

If your database is storing the values as decimal then everytime you fetch them from the database they are always going to come back as decimal .

The more important question is why do you want the values as double ? If it's for display purposes then I would recommend you use appropriate formatting. Bare in mind, you will lose accuracy when you convert from decimal to double .

Is public partial class Report_TeachersPosition a database generated class? (I suppose yes). You must change type of database table column and then regenerate model class

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM