Пример #1
0
        public District Create(Guid id, string name, string sisUrl, string sisRedirectUrl, string sisUserName, string sisPassword, string timeZone, string stateCode, bool isReportCardsEnabled)
        {
            BaseSecurity.EnsureSysAdminOrDistrictRegistrator(Context);
            string   server;
            District res;

            using (var uow = Update())
            {
                server = FindServer(uow);
                var da = new DistrictDataAccess(uow);
                res = new District
                {
                    ServerUrl            = server,
                    Id                   = id,
                    Name                 = name,
                    SisUrl               = sisUrl,
                    SisRedirectUrl       = sisRedirectUrl,
                    SisUserName          = sisUserName,
                    SisPassword          = sisPassword,
                    TimeZone             = timeZone,
                    MaxSyncTime          = MAX_SYNC_TIME_DEFAULT,
                    SyncLogFlushSize     = SYNC_LOG_FLUSH_SIZE_DEFAULT,
                    SyncHistoryDays      = SYNC_HISTORY_DAYS_DEFAULT,
                    FailCounter          = 0,
                    FailDelta            = 0,
                    IsDemoDistrict       = false,
                    SyncFrequency        = SYNC_FREQUENCY,
                    MaxSyncFrequency     = MAX_SYNC_FREQUENCY,
                    StateCode            = stateCode,
                    IsReportCardsEnabled = isReportCardsEnabled
                };
                da.Insert(res);
                uow.Commit();
            }
            using (var unitOfWork = new UnitOfWork(Settings.GetSchoolConnectionString(server, "Master"), false))
            {
                var da = new DistrictDataAccess(unitOfWork);
                da.CreateDistrictDataBase(res.Id.ToString(), Settings.SchoolTemplateDbName);
            }
            return(res);
        }