Esempio n. 1
0
        /// <summary>
        /// 根据Code获取二维码登录
        /// </summary>
        /// <param name="code"></param>
        /// <returns></returns>
        public static QrCodeLoginInfo GetByCode(string code)
        {
            var info = new QrCodeLoginInfo {
                Code = code
            };

            info = AppConnectEntityProcedure.GetEntityInstanceFromCacheByExtendedId(info);

            if (info == null || info.IsEmpty)
            {
                var db = Database.GetDatabase(DatabaseName.AppConnect);
                info = SafeProcedure.ExecuteAndGetInstance <QrCodeLoginInfo>(db, "dbo.QrCodeLogin_GetByCode", parameterMapper =>
                {
                    parameterMapper.AddWithValue("@Code", new Guid(code));
                },
                                                                             BuildInfo);

                if (info != null)
                {
                    info.IsEmpty = false;
                    AppConnectEntityProcedure.SaveEntityInstanceToCache(info);
                }
            }
            return(info);
        }
Esempio n. 2
0
        /// <summary>
        /// 获取调用凭证
        /// </summary>
        /// <param name="appId"></param>
        /// <returns></returns>
        public static TokenInfo Get(string appId)
        {
            var token = new TokenInfo {
                AppId = appId
            };

            token = AppConnectEntityProcedure.GetEntityInstanceFromCacheByExtendedId(token);

            if (token == null || token.IsEmpty)
            {
                var db = Database.GetDatabase(DatabaseName.AppConnect);
                token = SafeProcedure.ExecuteAndGetInstance <TokenInfo>(db, "dbo.Token_Get", parameterMapper =>
                {
                    parameterMapper.AddWithValue("@AppId", appId);
                },
                                                                        BuildInfo);

                if (token != null)
                {
                    token.IsEmpty = false;
                    AppConnectEntityProcedure.SaveEntityInstanceToCache(token);
                }
            }

            return(token);
        }