예제 #1
0
        /// <summary>
        /// 将IDataReader的当前记录读取到AllSitemapEntity 对象
        /// </summary>
        /// <param name="reader"></param>
        /// <returns></returns>
        public AllSitemapEntity LoadSingleRow(IDataReader reader)
        {
            var obj = new AllSitemapEntity();

            obj.Id            = (System.Int32)reader["Id"];
            obj.PlatCode      = (System.String)reader["PlatCode"];
            obj.PlatSiteId    = (System.String)reader["PlatSiteId"];
            obj.SiteId        = (System.String)reader["SiteId"];
            obj.SiteName      = (System.String)reader["SiteName"];
            obj.PendStartTime = (System.DateTime)reader["PendStartTime"];
            obj.PendEndTime   = (System.DateTime)reader["PendEndTime"];
            obj.SiteState     = (System.String)reader["SiteState"];
            obj.PlatMainUrl   = (System.String)reader["PlatMainUrl"];
            obj.PlatApiUrl    = (System.String)reader["PlatApiUrl"];
            obj.PayUrl        = (System.String)reader["PayUrl"];
            obj.BbsUrl        = (System.String)reader["BbsUrl"];
            obj.NavUrl        = (System.String)reader["NavUrl"];
            obj.CdnUrl        = (System.String)reader["CdnUrl"];
            obj.ChatUrl       = (System.String)reader["ChatUrl"];
            obj.SiteMainUrl   = (System.String)reader["SiteMainUrl"];
            obj.SiteLoginUrl  = (System.String)reader["SiteLoginUrl"];
            obj.SiteApiUrl    = (System.String)reader["SiteApiUrl"];
            obj.SiteSvcUrl    = (System.String)reader["SiteSvcUrl"];
            obj.RowTime       = (System.DateTime)reader["RowTime"];

            return(obj);
        }
예제 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            bool navFlag     = string.IsNullOrEmpty(ConfigurationManager.AppSettings["AutoNav"]);
            var  platSession = GovApi.GetPlatSession();
            var  zoneName    = UAFactory.Instance.ZoneName;
            var  zoneCache   = FunctionAppCache.Instance.GetZone(zoneName);

            if (null == zoneCache)
            {
                redirectBack(platSession);
                return;
            }
            //if (string.IsNullOrEmpty(platSession.Uid) || null == zoneCache)
            //{
            //    redirectBack(platSession);
            //    return;
            //}
            this.NavSiteId         = GovApi.GetNavSiteId();
            platSession.LastSiteId = this.NavSiteId;
            this.NavArgs           = platSession.AuthArgs;
            this.NavApiUrl         = GetNavApiUrl(platSession, navFlag);
            this.Cdn     = zoneCache.Cdn;
            this.Version = zoneCache.ClientVersion;
            var    req    = HttpContext.Current.Request;
            string server = (req.QueryString[COLServerV2] ?? req.QueryString[COLServer]) ?? string.Empty;

            if (server == "-1")
            {
                return;
            }
            AllSitemapEntity site = null;

            if (!string.IsNullOrEmpty(server))
            {
                site = SiteMapCache.Instance().GetPlatSiteConfig(server);
            }
            if (null != site)
            {
                redirect(site, platSession);
                return;
            }
            if (!string.IsNullOrEmpty(platSession.LastSiteId))
            {
                site = SiteMapCache.Instance().GetSiteConfig(platSession.LastSiteId);
            }
            if (null != site)
            {
                redirect(site, platSession);
                return;
            }

            if (string.IsNullOrEmpty(server) && navFlag)
            {
                return;
            }
            site = SiteMapCache.Instance().GetSiteConfig();
            redirect(site, platSession);
        }
예제 #3
0
        void redirect(AllSitemapEntity site, IPlatSessionData platSession)
        {
            string url = string.Format(site.SiteLoginUrl, platSession.AuthArgs);

            if (!string.IsNullOrEmpty(ConfigurationManager.AppSettings["TraceNav"]))
            {
                LogHelper.Insert(string.Format("Redirect rawUrl:{0},newUrl:{1}", Request.Url.PathAndQuery, url), LogType.Error);
            }
            HttpContext.Current.Response.RedirectPermanent(url, false);
            HttpContext.Current.ApplicationInstance.CompleteRequest();
        }
예제 #4
0
        /// <summary>
        /// 带事务的Update
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="trans">The trans.</param>
        /// <returns></returns>
        /// <remarks>2015/10/18 18:56:48</remarks>
        public bool Update(AllSitemapEntity entity, DbTransaction trans)
        {
            var       database       = new SqlDatabase(this.ConnectionString);
            DbCommand commandWrapper = database.GetStoredProcCommand("dbo.P_AllSitemap_Update");

            database.AddInParameter(commandWrapper, "@Id", DbType.Int32, entity.Id);
            database.AddInParameter(commandWrapper, "@PlatCode", DbType.AnsiString, entity.PlatCode);
            database.AddInParameter(commandWrapper, "@PlatSiteId", DbType.AnsiString, entity.PlatSiteId);
            database.AddInParameter(commandWrapper, "@SiteId", DbType.AnsiString, entity.SiteId);
            database.AddInParameter(commandWrapper, "@SiteName", DbType.AnsiString, entity.SiteName);
            database.AddInParameter(commandWrapper, "@PendStartTime", DbType.DateTime, entity.PendStartTime);
            database.AddInParameter(commandWrapper, "@PendEndTime", DbType.DateTime, entity.PendEndTime);
            database.AddInParameter(commandWrapper, "@SiteState", DbType.AnsiString, entity.SiteState);
            database.AddInParameter(commandWrapper, "@PlatMainUrl", DbType.AnsiString, entity.PlatMainUrl);
            database.AddInParameter(commandWrapper, "@PlatApiUrl", DbType.AnsiString, entity.PlatApiUrl);
            database.AddInParameter(commandWrapper, "@PayUrl", DbType.AnsiString, entity.PayUrl);
            database.AddInParameter(commandWrapper, "@BbsUrl", DbType.AnsiString, entity.BbsUrl);
            database.AddInParameter(commandWrapper, "@NavUrl", DbType.AnsiString, entity.NavUrl);
            database.AddInParameter(commandWrapper, "@CdnUrl", DbType.AnsiString, entity.CdnUrl);
            database.AddInParameter(commandWrapper, "@ChatUrl", DbType.AnsiString, entity.ChatUrl);
            database.AddInParameter(commandWrapper, "@SiteMainUrl", DbType.AnsiString, entity.SiteMainUrl);
            database.AddInParameter(commandWrapper, "@SiteLoginUrl", DbType.AnsiString, entity.SiteLoginUrl);
            database.AddInParameter(commandWrapper, "@SiteApiUrl", DbType.AnsiString, entity.SiteApiUrl);
            database.AddInParameter(commandWrapper, "@SiteSvcUrl", DbType.AnsiString, entity.SiteSvcUrl);
            database.AddInParameter(commandWrapper, "@RowTime", DbType.DateTime, entity.RowTime);


            int results = 0;

            if (trans != null)
            {
                results = database.ExecuteNonQuery(commandWrapper, trans);
            }
            else
            {
                results = database.ExecuteNonQuery(commandWrapper);
            }

            entity.Id = (System.Int32)database.GetParameterValue(commandWrapper, "@Id");

            return(Convert.ToBoolean(results));
        }
예제 #5
0
        /// <summary>
        /// GetById
        /// </summary>
        /// <param name="id">id</param>
        /// <returns>AllSitemapEntity</returns>
        /// <remarks>2015/10/18 18:56:48</remarks>
        public AllSitemapEntity GetById(System.Int32 id)
        {
            var database = new SqlDatabase(this.ConnectionString);

            DbCommand commandWrapper = database.GetStoredProcCommand("P_AllSitemap_GetById");

            database.AddInParameter(commandWrapper, "@Id", DbType.Int32, id);


            AllSitemapEntity obj = null;

            using (IDataReader reader = database.ExecuteReader(commandWrapper))
            {
                if (reader.Read())
                {
                    obj = LoadSingleRow(reader);
                }
            }
            return(obj);
        }
예제 #6
0
 /// <summary>
 /// Update
 /// </summary>
 /// <param name="entity"></param>
 /// <returns></returns>
 /// <remarks>2015/10/18 18:56:48</remarks>
 public bool Update(AllSitemapEntity entity)
 {
     return(Update(entity, null));
 }
예제 #7
0
 /// <summary>
 /// Insert
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="trans">The trans.</param>
 /// <returns></returns>
 /// <remarks>2015/10/18 18:56:48</remarks>
 public bool Insert(AllSitemapEntity entity)
 {
     return(Insert(entity, null));
 }
예제 #8
0
        public static bool Update(AllSitemapEntity allSitemapEntity, DbTransaction trans = null, string zoneId = "")
        {
            var provider = new AllSitemapProvider(zoneId);

            return(provider.Update(allSitemapEntity, trans));
        }