bool GetTestCaseFilterExpression(IRunContext runContext, LoggerHelper logger, string assemblyFileName, out ITestCaseFilterExpression filter) { filter = null; try { // In Microsoft.VisualStudio.TestPlatform.ObjectModel V11 IRunContext provides a TestCaseFilter property // GetTestCaseFilter only exists in V12+ #if PLATFORM_DOTNET var getTestCaseFilterMethod = runContext.GetType().GetRuntimeMethod("GetTestCaseFilter", new[] { typeof(IEnumerable<string>), typeof(Func<string, TestProperty>) }); #else var getTestCaseFilterMethod = runContext.GetType().GetMethod("GetTestCaseFilter"); #endif if (getTestCaseFilterMethod != null) filter = (ITestCaseFilterExpression)getTestCaseFilterMethod.Invoke(runContext, new object[] { supportedPropertyNames, null }); return true; } catch (TargetInvocationException e) { var innerExceptionType = e.InnerException.GetType(); if (innerExceptionType.FullName.EndsWith("TestPlatformFormatException", StringComparison.OrdinalIgnoreCase)) { logger.LogError("{0}: Exception discovering tests: {1}", Path.GetFileNameWithoutExtension(assemblyFileName), e.InnerException.Message); return false; } throw; } }
public IEnumerable<TestCase> GetFilteredTestList(IEnumerable<TestCase> testCases, IRunContext runContext, LoggerHelper logger, string assemblyFileName) { ITestCaseFilterExpression filter = null; if (GetTestCaseFilterExpression(runContext, logger, assemblyFileName, out filter)) { if (filter != null) return testCases.Where(testCase => filter.MatchTestCase(testCase, (p) => PropertyProvider(testCase, p))); } else { // Error while filtering, ensure discovered test list is empty return Enumerable.Empty<TestCase>(); } // No filter is specified return the original list return testCases; }
public static string ExceptionMessageFormat(Exception ex, bool log = false) { string message = "Error: There was a problem while processing your request: " + ex.Message; if (ex.InnerException != null) { Exception inner = ex.InnerException; if (inner is System.Data.Common.DbException) message = "Database is currently experiencing problems. " + inner.Message; else if (inner is System.Data.UpdateException) message = "Datebase is currently updating problem."; else if (inner is System.Data.DeletedRowInaccessibleException) message = "Datebase is currently deleting problem."; else if (inner is System.Data.EntityException) message = "Entity is problem."; else if (inner is NullReferenceException) message = "There are one or more required fields that are missing."; else if (inner is ArgumentException) { string paramName = ((ArgumentException)inner).ParamName; message = string.Concat("The ", paramName, " value is illegal."); } else if (inner is ApplicationException) message = "Exception in application" + inner.Message; else message = inner.Message; } if (log) { LoggerHelper loggerHelper = new LoggerHelper(); loggerHelper.LoggerError(ex); } return message; }
/// <summary> /// 打开竞技场 /// </summary> private void EnterArena() { LoggerHelper.Debug("EnterArena"); m_myself.RpcCall("EnterArenaReq"); }
/// <summary> /// 仇敌Buff /// </summary> private void RefreshRevenge() { LoggerHelper.Debug("RevengeBuff"); m_myself.RpcCall("RevengeBuffReq"); }
/// <summary> /// 刷新弱敌 /// </summary> private void RefreshWeak() { LoggerHelper.Debug("RefreshWeak"); m_myself.RpcCall("RefreshWeakReq"); }
///// <summary> ///// 获取绑定手机号验证码短信接口--解志辉 ///// </summary> ///// <param name="reqst">The reqst.</param> ///// <returns>ResultInfo<System.String>.</returns> ///// 创 建 者:解志辉 ///// 创建日期:2016-05-25 16:25:37 //[HttpPost] //public ResultInfo<string> GetBindMobileCode(RequestParam<SmsEntity> reqst) //{ // var ri = new ResultInfo<string>("99999"); // try // { // var mobile = reqst.body.mobile; // if (string.IsNullOrEmpty(mobile)) // { // ri.code = "1000000000"; // } // else if (!ValidateHelper.IsHandset(mobile)) // { // ri.code = "1000000001"; // } // else if (!_logic.CheckMobile(mobile)) // { // ri.code = "1000000010"; //未找到相关记录 // } // else // { // #region 发送修改密码短信 // var res = SendSms(mobile, 1, 25); // return res; // #endregion // } // ri.message = Settings.Instance.GetErrorMsg(ri.code); // return ri; // } // catch (Exception ex) // { // LoggerHelper.Error(ex.ToString()); // LoggerHelper.Error(JsonHelper.Entity2Json(reqst)); ri.code = "500"; // ri.message = Settings.Instance.GetErrorMsg(ri.code); // return ri; // } //} ///// <summary> ///// 获取修改手机号验证码短信接口--解志辉 ///// </summary> ///// <param name="reqst">The reqst.</param> ///// <returns>ResultInfo<System.String>.</returns> ///// 创 建 者:解志辉 ///// 创建日期:2016-05-25 16:20:03 //[HttpPost] //public ResultInfo<string> GetModifyMobileCode(RequestParam<RequestBindMobileEntity> reqst) //{ // var ri = new ResultInfo<string>("99999"); // try // { // var userId = ConvertHelper.ParseValue(reqst.body.userId, 0); // var mobile = _logic.SelectUserMobileByUserId(userId);//当前用户手机号 // if (string.IsNullOrEmpty(reqst.body.mobile)) // { // ri.code = "1000000000"; // } // else if (!ValidateHelper.IsHandset(reqst.body.mobile)) // { // ri.code = "1000000001"; // } // else if (mobile != reqst.body.mobile) // { // ri.code = "1000000013"; // } // else // { // #region 发送短信 // var res = SendSms(mobile, 1,35); // return res; // #endregion // } // ri.message = Settings.Instance.GetErrorMsg(ri.code); // return ri; // } // catch (Exception ex) // { // LoggerHelper.Error(ex.ToString()); // LoggerHelper.Error(JsonHelper.Entity2Json(reqst)); ri.code = "500"; // ri.message = Settings.Instance.GetErrorMsg(ri.code); // return ri; // } //} /// <summary> /// 发送短信--解志辉 /// </summary> /// <param name="mobile"></param> /// <param name="type"></param> /// <param name="messageId"></param> /// <returns></returns> protected ResultInfo <string> SendSms(string mobile, int type, int messageId) { var ri = new ResultInfo <string>("99999"); try { #region 防止短信过度频繁发送 #region First 60之内不能再次发送短信 var cacheKey = "reg_member_get_code_time_" + mobile; var cv = CacheHelper.GetSystemCache(cacheKey); if (cv == null) { CacheHelper.SetCache(cacheKey, DateTime.Now, 1); } else { var dte = ConvertHelper.ParseValue(cv, DateTime.MinValue); if (dte != DateTime.MinValue) { var sec = Settings.Instance.DateDiff("Second", dte, DateTime.Now); if (sec > 60) { CacheHelper.ClearCache(cacheKey); } else { ri.code = "1000000005"; //短信发送太频繁!请稍后再试 } } } #endregion #region Second 同IP间隔60S之后才能再次发送 同时一个IP最多发送8条注册短信 var t1 = (int)Enum.Parse(typeof(SmsType), SmsType.短信验证码.ToString()); var t2 = (int)Enum.Parse(typeof(SmsType), SmsType.语音短信验证码.ToString()); if (!_recordLogic.CheckInOneMinute(Settings.Instance.ClientIp, t1, t2)) { ri.code = "1000000005"; //短信发送太频繁!请稍后再试 } #endregion #region Third 同一IP最多发送8条同类型短信 if (_recordLogic.CheckIpSendTimes(Settings.Instance.ClientIp, t1, t2) >= 8) { ri.code = "1000000006"; //短信发送太频繁!请与客服联系 } #endregion #endregion #region 验证3分钟之内有没有验证码记录,有则发送 var ent = _recordLogic.SelectHistory(mobile, t1, t2); if (ent != null) { if (ent.hits < 4) { ent.orderid = SendSMS.Send(mobile, ent.smscontext); _recordLogic.UpdateRecord(ent); } else { ri.code = "1000000006"; //短信发送太频繁!请与客服联系 } } else //不存在记录,生成新验证码 { #region 生成验证码 发送短信并记录发送日志 var vcode = Utils.RndNum(6); var ebt = _logic.GetSmsEmailEntity(type, messageId); // 获取验证码邮件内容 var sbsms = new StringBuilder(ebt.SEContext); sbsms = sbsms.Replace("#CODE#", vcode); var pm = new SmsRecordEntity { phone_number = mobile, sendtime = DateTime.Now, senduserid = 0, smstype = t1, smscontext = sbsms.ToString(), orderid = SendSMS.Send(mobile, sbsms.ToString()), vcode = vcode, ip = Settings.Instance.ClientIp }; _recordLogic.AddRecord(pm); #endregion ri.code = "1000000099"; ri.body = vcode; } #endregion ri.message = Settings.Instance.GetErrorMsg(ri.code); return(ri); } catch (Exception ex) { LoggerHelper.Error(ex.ToString()); LoggerHelper.Error("send phone:" + mobile + "type:" + type + " messageId:" + messageId); ri.code = "500"; ri.message = Settings.Instance.GetErrorMsg(ri.code); return(ri); } }
/// <summary> /// Execute a transaction of all operations specified in the entities param. /// </summary> /// <param name="request">The request</param> /// <returns>a JSON response</returns> public virtual string ExecuteTransaction(HttpRequest request) { LoggerHelper.Info("Start"); try { string json = request.Params["entities"]; LoggerHelper.Debug("entities = " + json); List <Dictionary <string, string> > entities = new List <Dictionary <string, string> >(); if (!String.IsNullOrEmpty(json)) { entities = new JavaScriptSerializer().Deserialize <List <Dictionary <string, string> > >(json); if (entities.Count <= 0) { throw new ArgumentNullException("No entities found in request."); } List <TransOperation> operations = new List <TransOperation>(); string connName = ""; for (int i = 0; i < entities.Count; i++) { Dictionary <string, string> props = entities[i]; Entity entity = new Entity(); entity.SetProperties(props); string pageName = entity.GetProperty("PageName"); string operType = entity.GetProperty("OperationType"); if (string.IsNullOrEmpty(pageName)) { throw new ArgumentNullException("PageName must be specified in all entities."); } if (string.IsNullOrEmpty(operType)) { throw new ArgumentNullException("OperationType must be specified in all entities."); } entity.GetProperties().Remove("PageName"); entity.GetProperties().Remove("OperationType"); Page page = GetPageInfoDAO().GetPageConfig("", pageName); entity.SetTableName(page.TableName); EntityUtils.SetEntityFields(page, entity, false); TransOperation operation = new TransOperation(operType, entity); operations.Add(operation); //validate if all entities use the same connection name if (i == 0) //First entity { connName = page.ConnName == "DBConnString" ? "" : page.ConnName; } else { string _connName = page.ConnName == "DBConnString" ? "" : page.ConnName; if (connName != _connName) { throw new ArgumentNullException("All Entities must use the same connection name."); } } } GetCatalogDAO(connName).ExecuteTransaction(operations); } else { throw new ArgumentNullException("No operations found in request."); } } catch (Exception e) { LoggerHelper.Error(e); return(ErrorResponse(e)); } finally { LoggerHelper.Info("End"); } return(SuccessResponse()); }
public static void WriteToFile(this Exception ex, string message, string dir = "") { LoggerHelper.WriteToFile(message, ex, dir); }
public ActionResult RealNameAuth(RequestParam <RequestValidate> reqst) { LoggerHelper.Info(JsonHelper.Entity2Json(reqst)); MemberLogic _logic = new MemberLogic(); var uid = ConvertHelper.ParseValue(reqst.body.userId, 0); var p = _logic.SelectMemberByUserId(uid); var ckd = Settings.Instance.SiteDomain; UserEntity m = new UserEntity { MerId = Settings.Instance.MerId, Version = "10", CmdId = "UserRegister", MerCustId = Settings.Instance.MerCustId, BgRetUrl = ckd + ("/UserAuthentication/Index/BgRetUrlForUserRegister"), RetUrl = ckd + ("/UserAuthentication/Index/CallbackForUserRegister"), UsrMp = p.mobile, UsrEmail = p.email, UsrId = p.username, IdNo = reqst.body.userIdNo, IdType = "00" }; LoggerHelper.Info("身份证:" + m.IdNo); #pragma warning disable 1587 /// 签名规则 /// Version /// CmdId /// MerCustId /// BgRetUrl /// RetUrl /// UsrId /// UsrName /// IdType /// IdNo /// UsrMp /// UsrEmail /// MerPriv /// Version + CmdId + MerCustId + BgRetUrl + RetUrl + UsrId + UsrName + IdType + IdNo + UsrMp + UsrEmail + MerPriv #pragma warning restore 1587 StringBuilder chkVal = new StringBuilder(); string temp = m.MerPriv; AppendDeviceFlag(reqst.header.appId.ToString(), ref temp); m.MerPriv = temp; chkVal.Append(m.Version); chkVal.Append(m.CmdId); chkVal.Append(m.MerCustId); chkVal.Append(m.BgRetUrl); chkVal.Append(m.RetUrl); chkVal.Append(m.UsrId); chkVal.Append(m.IdType); chkVal.Append(m.IdNo); chkVal.Append(m.UsrMp); chkVal.Append(m.UsrEmail); chkVal.Append(m.MerPriv); string chkv = chkVal.ToString(); //私钥文件的位置(这里是放在了站点的根目录下) string merKeyFile = AppDomain.CurrentDomain.BaseDirectory + Settings.Instance.MerPr; //需要指定提交字符串的长度 int len = Encoding.UTF8.GetBytes(chkv).Length; StringBuilder sbChkValue = new StringBuilder(256); //加签 DllInterop.SignMsg(m.MerId, merKeyFile, chkv, len, sbChkValue); m.ChkValue = sbChkValue.ToString(); LoggerHelper.Info(chkVal.ToString()); LoggerHelper.Info("加签结果:" + m.ChkValue); return(View(m)); }
/// <summary> /// 实名注册回调地址 /// </summary> /// <returns></returns> public ActionResult CallbackForUserRegister(bool isSyncCallback = false) { var mEntity = new MemberEntity(); string username = ""; string useremail = ""; string merp = ""; UserEntity m = new UserEntity(); m.CmdId = DNTRequest.GetString("CmdId"); m.RespCode = DNTRequest.GetString("RespCode"); m.RespDesc = DNTRequest.GetString("RespDesc"); m.MerCustId = DNTRequest.GetString("MerCustId"); m.UsrId = DNTRequest.GetString("UsrId"); m.UsrCustId = DNTRequest.GetString("UsrCustId"); m.BgRetUrl = DNTRequest.GetString("BgRetUrl"); m.TrxId = DNTRequest.GetString("TrxId"); m.RetUrl = DNTRequest.GetString("RetUrl"); merp = m.MerPriv = DNTRequest.GetString("MerPriv"); m.IdType = DNTRequest.GetString("IdType"); m.IdNo = DNTRequest.GetString("IdNo"); m.UsrMp = DNTRequest.GetString("UsrMp"); useremail = DNTRequest.GetString("UsrEmail"); m.UsrEmail = useremail; username = HttpUtility.UrlDecode(DNTRequest.GetString("UsrName")); m.UsrName = username; m.ChkValue = DNTRequest.GetString("ChkValue"); LoggerHelper.Info("注册开户返回报文:" + JsonHelper.Entity2Json(m)); StringBuilder chkVal = new StringBuilder(); chkVal.Append(m.CmdId); chkVal.Append(m.RespCode); chkVal.Append(m.MerCustId); chkVal.Append(m.UsrId); chkVal.Append(m.UsrCustId); chkVal.Append(m.BgRetUrl); chkVal.Append(m.TrxId); chkVal.Append(m.RetUrl); chkVal.Append(m.MerPriv); string chkv = chkVal.ToString(); //私钥文件的位置(这里是放在了站点的根目录下) string merKeyFile = AppDomain.CurrentDomain.BaseDirectory + Settings.Instance.PgPubk; int ret = DllInterop.VeriSignMsg(merKeyFile, chkv, chkv.Length, m.ChkValue); string deviceKey = PickoutDeviceFlag(ref merp);//pick out device code from comment field m.MerPriv = merp; if (ret == 0) { if (m.RespCode == "000") { string cachename = m.UsrId + "Register" + m.MerCustId; LoggerHelper.Info("开户验签成功"); object lockObj = new object(); lock (lockObj) { lock (this) { if (Settings.Instance.GeTThirdCache(cachename) == 0) { Utils.SetThirdCache(cachename); MemberLogic mLogic = new MemberLogic(); mEntity.realname = m.UsrName; mEntity.UsrCustId = m.UsrCustId; mEntity.UsrId = m.UsrId; mEntity.iD_number = m.IdNo; if (mLogic.UpdateUserRealAuth(mEntity)) { LoggerHelper.Info("数据库操作成功"); var tempUsername = PageHelper.GetUserSplit(m.UsrId); var tempEntity = mLogic.SelectMemberEntityByName(tempUsername); //TODO: 以后添加实名奖励 if (tempEntity != null) { using (ActFacade actFacade = new ActFacade()) { actFacade.SendBonusAfterRegister(tempEntity.registerid.Value, Utils.GetDevicePlatformCode(deviceKey)); } } else { LoggerHelper.Info("Line to 276:查找不到用户,无法写入注册奖励!"); } LoggerHelper.Info("开户成功,数据库操作成功,开户返回报文:" + JsonHelper.Entity2Json(m)); } else { /*第三方成功,本地服务器操作失败*/ LoggerHelper.Info("开户成功,数据库操作失败,开户返回报文:" + JsonHelper.Entity2Json(m)); } } } } } if (isSyncCallback) { return(Content("RECV_ORD_ID_" + m.TrxId)); } } else { /*验签不成功*/ LoggerHelper.Info("开户验签失败"); if (isSyncCallback) { return(Content("-1")); } } return(View(m)); }
/// <summary> /// Executes a transaction in a SQL database. /// </summary> /// <param name="operations">The list of operations to be executed.</param> public virtual void ExecuteTransaction(List <TransOperation> operations) { LoggerHelper.Info("Start"); try { StringBuilder query = new StringBuilder(); IList <DBParam> queryParams = new List <DBParam>(); StringBuilder variables = new StringBuilder(); StringBuilder statementsQueries = new StringBuilder(); IDictionary <string, string> defaultVals = new Dictionary <string, string>(); IQueryBuilder queryBuilder = GetQueryBuilder(); foreach (TransOperation operation in operations) { Entity entity = operation.Entity; if (operation.OperationType == TransOperation.OperType.Save) { if (string.IsNullOrEmpty(operation.Entity.GetEntityId())) // New entity Insert { if (operation.BindIds) { queryBuilder.BuildInsertStatement(entity, statementsQueries, queryParams, defaultVals); } else { queryBuilder.BuildInsertStatement(entity, statementsQueries, queryParams); } Field id = entity.GetFieldId(); string varName = GetVariableName(id); if (!defaultVals.ContainsKey(id.Name)) { defaultVals[id.Name] = varName; variables.Append("DECLARE ").Append(varName).Append(" AS INT\n"); } statementsQueries.Append("\nSET ").Append(varName).Append(" = scope_identity()\n"); } else //update { queryBuilder.BuildUpdateStatement(entity, statementsQueries, queryParams); } } else if (operation.OperationType == TransOperation.OperType.Update) { queryBuilder.BuildUpdateEntityStatement(entity, statementsQueries, queryParams); } else if (operation.OperationType == TransOperation.OperType.Delete) { queryBuilder.BuildDeleteStatement(entity, statementsQueries, queryParams); } else if (operation.OperationType == TransOperation.OperType.DeleteEntities) { queryBuilder.BuildDeleteEntitiesStatement(entity, statementsQueries, queryParams); } statementsQueries.Append("\n"); } query.Append(variables).Append("\n"); query.Append(statementsQueries); LoggerHelper.Debug(query.ToString()); StatementWrapper stmtWrapper = new StatementWrapper(query, queryParams); IList <StatementWrapper> statements = new List <StatementWrapper>(); statements.Add(stmtWrapper); GetQueryRunner().ExecuteTransaction(GetConnection(), statements); } catch (Exception e) { LoggerHelper.Error(e.Message); if (e.Message.Contains("FK") || e.Message.Contains("REFERENCE")) { throw new Exception("Entity cannot be deleted, because is being used."); } else if (e.Message.Contains("UNIQUE KEY")) { throw new Exception("Entity already exists."); } else { throw new Exception("Unable to execute transactions.", e); } } finally { LoggerHelper.Info("End"); } }
public override void Consume(CacheMessage message) { var result = ProcessCache(message); LoggerHelper.Log(result); }
/// <summary> /// The initialize. /// </summary> /// <param name="target"> /// The target. /// </param> /// <param name="context"> /// The context. /// </param> /// <param name="contextName"> /// The context name. /// </param> protected internal override void Initialize(object target, ObjectContext context, string contextName) { base.Initialize(target, context, contextName); bool logParameterName = LogOptions.HasFlag(TraceAspectOptions.ParameterName); bool logParameterType = LogOptions.HasFlag(TraceAspectOptions.ParameterType); bool logparameterValue = LogOptions.HasFlag(TraceAspectOptions.ParameterValue); _logReturn = LogOptions.HasFlag(TraceAspectOptions.ReturnValue); if (logParameterName || logParameterType || logparameterValue) _helper = new LoggerHelper(logparameterValue, logParameterType); }
public DiagnosticMessageVisitor(LoggerHelper logger, string assemblyDisplayName, bool showDiagnostics) { this.logger = logger; this.assemblyDisplayName = assemblyDisplayName; this.showDiagnostics = showDiagnostics; }
public void OnCompleted() => LoggerHelper.RunWithLogging(_logger, () => _innerProcessor.OnCompleted(), nameof(OnCompleted));
public void OnNext(T value) => LoggerHelper.RunWithLogging(_logger, () => _innerProcessor.OnNext(value), nameof(OnNext));
/// <summary> /// 同步临床接口数据 /// </summary> /// <returns></returns> public void SyncGuid() { int pagesize = 50; LoggerHelper.WarnInTimeTest("[SyncGuid]:开始执行!"); string BeforeDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd"); long startTime = ConvertDateTimeToInt(Convert.ToDateTime(BeforeDate + " 00:00:00")); long endTime = ConvertDateTimeToInt(Convert.ToDateTime(BeforeDate + " 23:59:59")); string guidurl = GuidUrl + "projectId=" + GuidProjectId + "&startTime=" + startTime + "&endTime=" + endTime + "&start=1&num=50"; LoggerHelper.WarnInTimeTest("[SyncGuid]====guidurl:" + guidurl); //获取临床指南返回的数据 string guidback = HttpService.Get(guidurl); guidback = HttpUtility.UrlDecode(guidback); string KeyWord = AESGuidKeyCode; string iv = guidback.Substring(0, 16); //解密数据 string guiddata = EncryptHelper.DecodeAES(guidback, KeyWord, iv); guiddata = guiddata.Substring(guiddata.IndexOf('{'), guiddata.LastIndexOf('}') - guiddata.IndexOf('{') + 1); //序列化数据 GuidResult model = JsonConvert.DeserializeObject <GuidResult>(guiddata); if (model.success && model.data.count > 0) { int allpagesize = (model.data.count % pagesize == 0) ? (model.data.count / pagesize) : (model.data.count / pagesize + 1); LoggerHelper.WarnInTimeTest("[SyncGuid]====allpagesize:" + allpagesize); //只有一页 if (allpagesize == 1) { AddGuid(model.data.items); } //不止一页 else { //轮询数据 并写入 for (int i = 1; i <= allpagesize; i++) { try { guidurl = GuidUrl + "projectId=" + GuidProjectId + "&startTime=" + startTime + "&endTime=" + endTime + "&start=" + i + "&num=" + pagesize + ""; guidback = HttpService.Get(guidurl); guidback = HttpUtility.UrlDecode(guidback); iv = guidback.Substring(0, 16); guiddata = EncryptHelper.DecodeAES(guidback, KeyWord, iv); guiddata = guiddata.Substring(guiddata.IndexOf("data") - 2, guiddata.LastIndexOf('}') - guiddata.IndexOf('{') + 1); LoggerHelper.WarnInTimeTest("[SyncGuid]====current page:" + i); GuidResult newmodel = JsonConvert.DeserializeObject <GuidResult>(guiddata); AddGuid(newmodel.data.items); } catch (Exception e) { LoggerHelper.WarnInTimeTest("[写入GuidVisit Error]:" + e.Message); } } } } }
protected override ShoppingCartRuleResult PerformRules(MyHLShoppingCart cart, ShoppingCartRuleReason reason, ShoppingCartRuleResult Result) { Result.Result = RulesResult.Success; if (cart == null) { return(Result); } base.PerformRules(cart, reason, Result); var currentlimits = GetCurrentPurchasingLimits(cart.DistributorID, GetCurrentOrderMonth()); if (currentlimits.PurchaseLimitType == PurchaseLimitType.None || currentlimits.LimitsRestrictionType != LimitsRestrictionType.PurchasingLimits) { return(Result); } if (cart.ItemsBeingAdded != null && cart.ItemsBeingAdded.Count > 0) { var calcTheseItems = new List <ShoppingCartItem_V01>(); calcTheseItems.AddRange(from i in cart.CartItems where !APFDueProvider.IsAPFSku(i.SKU) select new ShoppingCartItem_V01(i.ID, i.SKU, i.Quantity, i.Updated, i.MinQuantity)); bool bExceed = false; List <string> skuToAdd = new List <string>(); foreach (var item in cart.ItemsBeingAdded) { if (bExceed == true) { Result = reportError(cart, item, Result); continue; } var existingItem = calcTheseItems.Find(ci => ci.SKU == item.SKU); if (null != existingItem) { existingItem.Quantity += item.Quantity; } else { calcTheseItems.Add(new ShoppingCartItem_V01(0, item.SKU, item.Quantity, DateTime.Now)); } // remove A and L type var allItems = CatalogProvider.GetCatalogItems( (from s in calcTheseItems where s.SKU != null select s.SKU).ToList(), Country); if (null != allItems && allItems.Count > 0) { var skuExcluded = (from c in allItems.Values where (c as CatalogItem_V01).ProductType != ServiceProvider.CatalogSvc.ProductType.Product select c.SKU); calcTheseItems.RemoveAll(s => skuExcluded.Contains(s.SKU)); } var totals = cart.Calculate(calcTheseItems, false); if (null == totals) { var message = string.Format( "Purchasing Limits DiscountedRetail calculation failed due to Order Totals returning a null for Distributor {0}", cart.DistributorID); LoggerHelper.Error(message); throw new ApplicationException(message); } if (currentlimits.RemainingVolume - (totals as OrderTotals_V01).AmountDue < 0) { bExceed = true; Result = reportError(cart, item, Result); } else { skuToAdd.Add(item.SKU); } } cart.ItemsBeingAdded.RemoveAll(s => !skuToAdd.Contains(s.SKU)); } return(Result); }
private async Task ProvideCredentialAsync(bool userInteraction = true) { try { var cipherService = ServiceContainer.Resolve<ICipherService>("cipherService", true); Bit.Core.Models.Domain.Cipher cipher = null; var cancel = cipherService == null || _context.CredentialIdentity?.RecordIdentifier == null; if (!cancel) { cipher = await cipherService.GetAsync(_context.CredentialIdentity.RecordIdentifier); cancel = cipher == null || cipher.Type != Bit.Core.Enums.CipherType.Login || cipher.Login == null; } if (cancel) { var err = new NSError(new NSString("ASExtensionErrorDomain"), Convert.ToInt32(ASExtensionErrorCode.CredentialIdentityNotFound), null); ExtensionContext?.CancelRequest(err); return; } var decCipher = await cipher.DecryptAsync(); if (decCipher.Reprompt != Bit.Core.Enums.CipherRepromptType.None) { // Prompt for password using either the lock screen or dialog unless // already verified the password. if (!userInteraction) { await _stateService.Value.SetPasswordRepromptAutofillAsync(true); var err = new NSError(new NSString("ASExtensionErrorDomain"), Convert.ToInt32(ASExtensionErrorCode.UserInteractionRequired), null); ExtensionContext?.CancelRequest(err); return; } else if (!await _stateService.Value.GetPasswordVerifiedAutofillAsync()) { // Add a timeout to resolve keyboard not always showing up. await Task.Delay(250); var passwordRepromptService = ServiceContainer.Resolve<IPasswordRepromptService>("passwordRepromptService"); if (!await passwordRepromptService.ShowPasswordPromptAsync()) { var err = new NSError(new NSString("ASExtensionErrorDomain"), Convert.ToInt32(ASExtensionErrorCode.UserCanceled), null); ExtensionContext?.CancelRequest(err); return; } } } string totpCode = null; var disableTotpCopy = await _stateService.Value.GetDisableAutoTotpCopyAsync(); if (!disableTotpCopy.GetValueOrDefault(false)) { var canAccessPremiumAsync = await _stateService.Value.CanAccessPremiumAsync(); if (!string.IsNullOrWhiteSpace(decCipher.Login.Totp) && (canAccessPremiumAsync || cipher.OrganizationUseTotp)) { var totpService = ServiceContainer.Resolve<ITotpService>("totpService"); totpCode = await totpService.GetCodeAsync(decCipher.Login.Totp); } } CompleteRequest(decCipher.Id, decCipher.Login.Username, decCipher.Login.Password, totpCode); } catch (Exception ex) { LoggerHelper.LogEvenIfCantBeResolved(ex); throw; } }
override public bool MoveToByNav(Vector3 _v, float _stopDistance = 0f, bool needToAdjustPosY = true) { if (!canMove) { return(false); } if (needToAdjustPosY) { bool hasHit = MogoUtils.GetPointInTerrain(_v.x, _v.z, out _v); if (!hasHit) { EventDispatcher.TriggerEvent(ON_MOVE_TO_FALSE, transform.gameObject, targetToMoveTo, 0f); LoggerHelper.Warning("!hasHit:" + _v); return(false); } } //计算路线 if (!isNaving || needToAdjustPosY)//|| (targetToMoveTo - v).magnitude < 0.05f { if (m_navHelper != null) { //Debug.LogError("targetToMoveTO:" + _v); path = m_navHelper.GetPathByTarget(_v); targetToMoveTo = _v; m_cornersIdx = 1; m_stopDistance = _stopDistance; } else { EventDispatcher.TriggerEvent(ON_MOVE_TO_FALSE, transform.gameObject, targetToMoveTo, 0f); return(false); } } //Mogo.Util.LoggerHelper.Debug("path.corners.Length:" + path.corners.Length); if (path == null) { StopNav(); EventDispatcher.TriggerEvent(ON_MOVE_TO_FALSE, transform.gameObject, targetToMoveTo, 0f); return(false); } if (path.corners.Length < 2) { EventDispatcher.TriggerEvent(ON_MOVE_TO_FALSE, transform.gameObject, targetToMoveTo, 0f); LoggerHelper.Warning("path.corners.Length < 2:" + targetToMoveTo); StopNav(); //EventDispatcher.TriggerEvent(ON_MOVE_TO, transform.gameObject, targetToMoveTo); return(false); } isNaving = true; moveDirection = (path.corners[m_cornersIdx] - transform.position).normalized; RotateTo(path.corners[m_cornersIdx]); //transform.LookAt(new Vector3(path.corners[m_cornersIdx].x, transform.position.y, path.corners[m_cornersIdx].z)); float dis = Vector3.Distance(transform.position, path.corners[m_cornersIdx]); float step = extraSpeed * Time.deltaTime; if (step + 0.1f > dis && m_cornersIdx < path.corners.Length - 1) { collisionFlags = characterController.Move(path.corners[m_cornersIdx] - transform.position); if ((path.corners[m_cornersIdx] - transform.position).magnitude > 0.3f) { path = m_navHelper.GetPathByTarget(targetToMoveTo); m_cornersIdx = 1; } else { m_cornersIdx++; } moveDirection = Vector3.zero; //transform.LookAt(new Vector3(path.corners[m_cornersIdx].x, transform.position.y, path.corners[m_cornersIdx].z)); //collisionFlags = characterController.Move(moveDirection * dis); //transform.position = new Vector3(path.corners[m_cornersIdx].x, transform.position.y, path.corners[m_cornersIdx].z); //m_cornersIdx++; } else if (m_cornersIdx == path.corners.Length - 1 && step + 0.1f + m_stopDistance > dis) { //Debug.LogError("StopNav"); float tempDis; //for (int i = 0; i < 5 && tempDis > 0.1; i++, dis = Vector3.Distance(transform.position, targetToMoveTo)) //{ tempDis = dis - m_stopDistance; tempDis = tempDis > 0 ? tempDis : 0; collisionFlags = characterController.Move((path.corners[m_cornersIdx] - transform.position).normalized * tempDis); //} StopNav(); tempDis = Vector2.Distance(new Vector2(transform.position.x, transform.position.z), new Vector2(targetToMoveTo.x, targetToMoveTo.z)); if (tempDis > 0.2 + m_stopDistance) { //MogoWorld.thePlayer.Idle(); EventDispatcher.TriggerEvent(ON_MOVE_TO_FALSE, transform.gameObject, targetToMoveTo, tempDis); } else { EventDispatcher.TriggerEvent(ON_MOVE_TO, transform.gameObject, targetToMoveTo); } } return(true); }
void DiscoverTests <TVisitor>(IEnumerable <string> sources, LoggerHelper logger, Func <string, ITestFrameworkDiscoverer, ITestFrameworkDiscoveryOptions, TVisitor> visitorFactory, Action <string, ITestFrameworkDiscoverer, ITestFrameworkDiscoveryOptions, TVisitor> visitComplete = null) where TVisitor : IVsDiscoverySink, IDisposable { try { RemotingUtility.CleanUpRegisteredChannels(); using (AssemblyHelper.SubscribeResolve()) { var reporterMessageHandler = GetRunnerReporter(sources).CreateMessageHandler(new VisualStudioRunnerLogger(logger)); foreach (var assemblyFileNameCanBeWithoutAbsolutePath in sources) { var assemblyFileName = assemblyFileNameCanBeWithoutAbsolutePath; #if !WINDOWS_UAP assemblyFileName = Path.GetFullPath(assemblyFileNameCanBeWithoutAbsolutePath); #endif var assembly = new XunitProjectAssembly { AssemblyFilename = assemblyFileName }; var configuration = LoadConfiguration(assemblyFileName); var fileName = Path.GetFileNameWithoutExtension(assemblyFileName); var shadowCopy = configuration.ShadowCopyOrDefault; try { if (cancelled) { break; } if (!IsXunitTestAssembly(assemblyFileName)) { if (configuration.DiagnosticMessagesOrDefault) { logger.Log("Skipping: {0} (no reference to xUnit.net)", fileName); } } else { var diagnosticSink = new DiagnosticMessageSink(logger, fileName, configuration.DiagnosticMessagesOrDefault); using (var framework = new XunitFrontController(AppDomainDefaultBehavior, assemblyFileName: assemblyFileName, configFileName: null, shadowCopy: shadowCopy, diagnosticMessageSink: MessageSinkAdapter.Wrap(diagnosticSink))) { var targetFramework = framework.TargetFramework; if (targetFramework.StartsWith("MonoTouch", StringComparison.OrdinalIgnoreCase) || targetFramework.StartsWith("MonoAndroid", StringComparison.OrdinalIgnoreCase) || targetFramework.StartsWith("Xamarin.iOS", StringComparison.OrdinalIgnoreCase)) { if (configuration.DiagnosticMessagesOrDefault) { logger.Log("Skipping: {0} (unsupported target framework '{1}')", fileName, targetFramework); } } else { var discoveryOptions = TestFrameworkOptions.ForDiscovery(configuration); using (var visitor = visitorFactory(assemblyFileName, framework, discoveryOptions)) { reporterMessageHandler.OnMessage(new TestAssemblyDiscoveryStarting(assembly, framework.CanUseAppDomains && AppDomainDefaultBehavior != AppDomainSupport.Denied, shadowCopy, discoveryOptions)); framework.Find(includeSourceInformation: RunSettingsHelper.DesignMode, discoveryMessageSink: visitor, discoveryOptions: discoveryOptions); var totalTests = visitor.Finish(); visitComplete?.Invoke(assemblyFileName, framework, discoveryOptions, visitor); reporterMessageHandler.OnMessage(new TestAssemblyDiscoveryFinished(assembly, discoveryOptions, totalTests, totalTests)); } } } } } catch (Exception e) { var ex = e.Unwrap(); var fileNotFound = ex as FileNotFoundException; #if !WINDOWS_UAP var fileLoad = ex as FileLoadException; #endif if (ex is InvalidOperationException) { logger.LogWarning("Skipping: {0} ({1})", fileName, ex.Message); } else if (fileNotFound != null) { logger.LogWarning("Skipping: {0} (could not find dependent assembly '{1}')", fileName, Path.GetFileNameWithoutExtension(fileNotFound.FileName)); } #if !WINDOWS_UAP else if (fileLoad != null) { logger.LogWarning("Skipping: {0} (could not find dependent assembly '{1}')", fileName, Path.GetFileNameWithoutExtension(fileLoad.FileName)); } #endif else { logger.LogWarning("Exception discovering tests from {0}: {1}", fileName, ex); } } } } } catch (Exception e) { logger.LogWarning("Exception discovering tests: {0}", e.Unwrap()); } }
public async Task Invoke(HttpContext context) { //context.Features.Get<IEndpointFeature> try { await _nextMiddleware.Invoke(context); } catch (Exception ex) { if (ex is UtilityException && ((UtilityException)ex).Level > 0) { var utilityException = (UtilityException)ex; object errorMessage = new ErrorMessage() { Code = utilityException.Code, Message = await utilityException.GetCurrentLcidMessage() }; var errorType = typeof(ErrorMessage); if (ExceptionConvert != null) { (errorType, errorMessage) = await ExceptionConvert.Convert(utilityException); } if (!UtilityExceptionTypeStatusCodeMappings.Mappings.TryGetValue(utilityException.Type, out int statusCode)) { statusCode = 500; } await context.Response.WriteJson(statusCode, errorType, errorMessage); } else { string message; if (_isDebug) { message = ex.ToStackTraceString(); } else { message = string.Format(StringLanguageTranslate.Translate(TextCodes.InnerError, "系统内部错误,请查看系统日志")); } object errorMessage = new ErrorMessage() { Code = -1, Message = message }; var errorType = typeof(ErrorMessage); if (ExceptionConvert != null) { (errorType, errorMessage) = await ExceptionConvert.Convert(ex); } await context.Response.WriteJson(StatusCodes.Status500InternalServerError, errorType, errorMessage); } //从Http上下文中获取上下文生成结果 if (context.Items.TryGetValue("AuthorizeResult", out object objResult)) { try { ((IAppUserAuthorizeResult)objResult).Execute(); } catch { } } //从Http上下文中获取国际化上下文初始化对象 if (context.Items.TryGetValue("InternationalizationContextInit", out object objInit)) { try { ((IInternationalizationContextInit)objInit).Execute(); } catch { } } //将异常存储在上下文的Item中 context.Items.Add("ExecuteException", ex); //加到日志中 var logObj = await _appExceptionHttpContextLogConvert.Convert(context); LoggerHelper.LogError(_categoryName, logObj); //var logger = _loggerFactory.CreateLogger(_categoryName); //logger.LogError($"Unhandle Error,\nmessage:{ex.Message},\nstacktrace:{ex.StackTrace}"); } }
void RunTestsInAssembly(IRunContext runContext, IFrameworkHandle frameworkHandle, LoggerHelper logger, IMessageSinkWithTypes reporterMessageHandler, AssemblyRunInfo runInfo) { if (cancelled) { return; } var assembly = new XunitProjectAssembly { AssemblyFilename = runInfo.AssemblyFileName }; var assemblyFileName = runInfo.AssemblyFileName; var assemblyDisplayName = Path.GetFileNameWithoutExtension(assemblyFileName); var shadowCopy = assembly.Configuration.ShadowCopyOrDefault; var appDomain = assembly.Configuration.AppDomain ?? AppDomainDefaultBehavior; var longRunningSeconds = assembly.Configuration.LongRunningTestSecondsOrDefault; if (RunSettingsHelper.DisableAppDomain) { appDomain = AppDomainSupport.Denied; } try { #if WINDOWS_UAP // For AppX Apps, use the package location assemblyFileName = Path.Combine(Windows.ApplicationModel.Package.Current.InstalledLocation.Path, Path.GetFileName(assemblyFileName)); #endif var diagnosticSink = new DiagnosticMessageSink(logger, assemblyDisplayName, runInfo.Configuration.DiagnosticMessagesOrDefault); using (var controller = new XunitFrontController(appDomain, assemblyFileName: assemblyFileName, configFileName: null, shadowCopy: shadowCopy, diagnosticMessageSink: MessageSinkAdapter.Wrap(diagnosticSink))) { var xunitTestCases = runInfo.TestCases.Select(tc => new { vs = tc, xunit = Deserialize(logger, controller, tc) }) .Where(tc => tc.xunit != null) .ToDictionary(tc => tc.xunit, tc => tc.vs); var executionOptions = TestFrameworkOptions.ForExecution(runInfo.Configuration); if (RunSettingsHelper.DisableParallelization) { executionOptions.SetSynchronousMessageReporting(true); executionOptions.SetDisableParallelization(true); } reporterMessageHandler.OnMessage(new TestAssemblyExecutionStarting(assembly, executionOptions)); using (var vsExecutionSink = new VsExecutionSink(reporterMessageHandler, frameworkHandle, logger, xunitTestCases, executionOptions, () => cancelled)) { IExecutionSink resultsSink = vsExecutionSink; if (longRunningSeconds > 0) { resultsSink = new DelegatingLongRunningTestDetectionSink(resultsSink, TimeSpan.FromSeconds(longRunningSeconds), diagnosticSink); } controller.RunTests(xunitTestCases.Keys.ToList(), resultsSink, executionOptions); resultsSink.Finished.WaitOne(); reporterMessageHandler.OnMessage(new TestAssemblyExecutionFinished(assembly, executionOptions, resultsSink.ExecutionSummary)); } } } catch (Exception ex) { logger.LogError("{0}: Catastrophic failure: {1}", assemblyDisplayName, ex); } }
public void AddWigetToFullNameData(string widgetName, string fullName) { LoggerHelper.Debug(widgetName + " " + fullName); m_widgetToFullName.Add(widgetName, fullName); }
public DiscoveredTestCase(string source, ITestFrameworkDiscoverer discoverer, ITestCase testCase, LoggerHelper logger, bool designMode) { Name = $"{testCase.TestMethod.TestClass.Class.Name}.{testCase.TestMethod.Method.Name}"; TraitNames = testCase.Traits.Keys; VSTestCase = VsDiscoverySink.CreateVsTestCase(source, discoverer, testCase, forceUniqueName: false, logger: logger, designMode: designMode); uniqueID = testCase.UniqueID; }
/// <summary> /// 刷新强敌 /// </summary> private void RefreshStrong() { LoggerHelper.Debug("RefreshStrong"); m_myself.RpcCall("RefreshStrongReq"); }
/// <summary> /// 会议提醒 /// </summary> /// <returns></returns> public void RemindMeet() { try { var rep = ContainerManager.Resolve <IEfRepository>(); var dt = DateTime.UtcNow.AddHours(8); var list = from a in rep.Where <MeetInfo>(s => s.IsDeleted != 1 && s.MeetStartTime > dt) join b in rep.Where <MyMeetOrder>(s => s.IsDeleted != 1 && s.HasReminded != 1 && s.IsRemind == 1) on a.Id equals b.MeetId join c in rep.Where <WxUserModel>(s => s.IsDeleted != 1 && s.Mobile != null) on b.UnionId equals c.UnionId select new { MeetOrderId = b.Id, a.MeetTitle, a.MeetStartTime, c.Mobile, b.RemindOffsetMinutes }; if (list == null || list.Count() == 0) { return; } var list2 = from a in list.ToList() where a.MeetStartTime.Value.AddMinutes(a.RemindOffsetMinutes) <= DateTime.UtcNow.AddHours(8) select a; foreach (var item in list2) { if (string.IsNullOrEmpty(item.Mobile)) { continue; } try { string title = item.MeetTitle; string time = item.MeetStartTime?.ToString(Time_Format) ?? ""; SendSmsModel sm = new SendSmsModel { CompanyCode = "4033", ParamName = JsonConvert.SerializeObject(new { systemName = System_Name, meetingTime = time, meetingType = title }).Base64Encoding(), PhoneNumbers = item.Mobile, SystemId = "3", SignName = "费卡中国", TemplateId = "FKSMS0046" }; LoggerHelper.WriteLogInfo($"[RemindMeet]:******发送会议提醒短信开始******"); LoggerHelper.WriteLogInfo($"[RemindMeet]:PhoneNumbers={sm.PhoneNumbers}"); LoggerHelper.WriteLogInfo($"[RemindMeet]:meetingTime={time}"); LoggerHelper.WriteLogInfo($"[RemindMeet]:meetingType={title}"); var smsResult = SmsUtil.SendMessage(sm); if (smsResult?.ResultFlag ?? false) { LoggerHelper.WriteLogInfo($"[RemindMeet]:smsResult.ResultFlag=true"); var meetOrder = rep.FirstOrDefault <MyMeetOrder>(s => s.IsDeleted != 1 && s.Id == item.MeetOrderId); if (meetOrder != null) { meetOrder.HasReminded = 1; //已发送提醒短信 rep.Update(meetOrder); rep.SaveChanges(); LoggerHelper.WriteLogInfo($"[RemindMeet]:set HasReminded to 1"); } } LoggerHelper.WriteLogInfo($"[RemindMeet]:******发送会议提醒短信结束******"); } catch (Exception ex) { LoggerHelper.Error($"--------------------------------------------------------------------------------"); LoggerHelper.Error($"[MSG]:{ex.Message};\n"); LoggerHelper.Error($"[Source]:{ex.Source}\n"); LoggerHelper.Error($"[StackTrace]:{ex.StackTrace}\n"); LoggerHelper.Error($"[StackTrace]:{ex.TargetSite.Name}\n"); LoggerHelper.Error($"[MethodName]:[[SSPC_One_HCP.WebApi.Jobs.RemindJob.RemindMeet]]\n"); LoggerHelper.Error($"--------------------------------------------------------------------------------"); } } } catch (Exception ex) { LoggerHelper.Error($"--------------------------------------------------------------------------------"); LoggerHelper.Error($"[MSG]:{ex.Message};\n"); LoggerHelper.Error($"[Source]:{ex.Source}\n"); LoggerHelper.Error($"[StackTrace]:{ex.StackTrace}\n"); LoggerHelper.Error($"[StackTrace]:{ex.TargetSite.Name}\n"); LoggerHelper.Error($"[MethodName]:[[SSPC_One_HCP.WebApi.Jobs.RemindJob.RemindMeet]]\n"); LoggerHelper.Error($"--------------------------------------------------------------------------------"); //throw ex; } }
/// <summary> /// 挑战竞技场 /// </summary> private void Challenge(int level) { LoggerHelper.Debug(level); m_myself.RpcCall("ChallengeReq", level); }
public IEnumerable <TestCase> GetFilteredTestList(IEnumerable <TestCase> testCases, IRunContext runContext, LoggerHelper logger, string assemblyFileName) { ITestCaseFilterExpression filter = null; if (GetTestCaseFilterExpression(runContext, logger, assemblyFileName, out filter)) { if (filter != null) { return(testCases.Where(testCase => filter.MatchTestCase(testCase, (p) => PropertyProvider(testCase, p)))); } } else { // Error while filtering, ensure discovered test list is empty return(Enumerable.Empty <TestCase>()); } // No filter is specified return the original list return(testCases); }
private void LogPermition(string controller, string action) { var user = User.Identity.IsAuthenticated ? User.Identity.Name : Anonymous; LoggerHelper.LogException($"BaseController. User does not have access to the functionality. Controller={controller}, Action={action}, User={user}."); }
public void SetGray(bool isGray = true) { LoggerHelper.Debug("It's gray"); challengeImg.ShowAsWhiteBlack(isGray); }
public void OnError(Exception error) => LoggerHelper.RunWithLogging(_logger, () => _innerProcessor.OnError(error), nameof(OnError));
public override bool PrePushToRabbitMq(out string fileSavePath, out string errorMsg) { fileSavePath = string.Empty; errorMsg = string.Empty; try { if (string.IsNullOrWhiteSpace(customId)) { errorMsg = "wordreport缺少customID"; return(false); } string sysPrimaryKey = string.Empty; if (!dicData.TryGetValue("SYSPRIMARYKEY", out sysPrimaryKey)) { errorMsg = "wordreport缺少SYSPRIMARYKEY"; return(false); } string suffix = "doc"; if (!dicData.TryGetValue("REPORTTYPES", out suffix)) { suffix = "doc"; } if (string.IsNullOrWhiteSpace(suffix)) { suffix = "doc"; } //附件___blob___ //bool hasData = false; if (cmdAttach != null) { #region 附件处理 string relativePath = string.Format("{0}\\{1}\\{2}\\{3}.{4}", FSSelector.GetSafeFilename(customId), DateTime.Now.ToString("yyyy-MM"), FSSelector.GetSafeFilename(sysPrimaryKey), FSSelector.GetSafeFilename(pk), suffix); string baseFileDir = FSSelector.GetFSWordUrl(customId); string filePath = Path.Combine(baseFileDir, relativePath); string fileFolder = Path.GetDirectoryName(filePath); if (!Directory.Exists(fileFolder)) { Directory.CreateDirectory(fileFolder); } try { File.WriteAllBytes(filePath, cmdAttach); fileSavePath = filePath; //hasData = true; //dicData["WORDREPORTPATH"] = filePath; //dicData["ISLOCALSTORE"] = "0"; //if (cmdAttach.Length >= limitedSized * 1024 * 1024) //{ // //标识为大型文件,通过wcf的stream模式传输 // dicData["ISLOCALSTORE"] = "1"; //} } catch (Exception ex) { LoggerHelper.WriteErrorLog(logger, ex); errorMsg = string.Format("[ErrorMsg:{0}]-[StackTrace:{1}]-[Source:{2}]", ex.Message, ex.StackTrace, ex.Source); return(false); } #endregion } #region old code //if (dicData.ContainsKey("IMAGE") && cmdAttach != null) //{ // var binaryIndexs = dicData["IMAGE"]; // if (binaryIndexs.Contains("___blob___")) // { // var bData = GetBinaryByIndexs(binaryIndexs); // if (bData != null) // { // // // #region 附件处理 // string relativePath = string.Format("{0}\\{1}\\{2}\\{3}.{4}", // FSSelector.GetSafeFilename(customId), // DateTime.Now.ToString("yyyy-MM"), // FSSelector.GetSafeFilename(sysPrimaryKey), // FSSelector.GetSafeFilename(pk), // suffix); // string baseFileDir = FSSelector.GetFSWordUrl(customId); // string filePath = Path.Combine(baseFileDir, relativePath); // string fileFolder = Path.GetDirectoryName(filePath); // if (!Directory.Exists(fileFolder)) // { // Directory.CreateDirectory(fileFolder); // } // try // { // File.WriteAllBytes(filePath, bData); // hasData = true; // dicData["WORDREPORTPATH"] = filePath; // dicData["ISLOCALSTORE"] = "0"; // if (bData.Length >= limitedSized * 1024 * 1024) // { // //标识为大型文件,通过wcf的stream模式传输 // dicData["ISLOCALSTORE"] = "1"; // } // } // catch (Exception ex) // { // LoggerHelper.WriteErrorLog(logger, ex); // errorMsg = string.Format("[ErrorMsg:{0}]-[StackTrace:{1}]-[Source:{2}]", // ex.Message, // ex.StackTrace, // ex.Source); // return false; // } // #endregion // //Task.Factory.StartNew(() => SaveToRavenDB(filePath, ms)); // } // } //} #endregion //if (!hasData) //{ // dicData["NODATA"] = "1"; // LoggerHelper.WriteCustomLog(logger, "无附件 " + cmdData, "CWorkNoReport", false); //} return(true); } catch (Exception ex) { LoggerHelper.WriteErrorLog(logger, ex); errorMsg = ex.Message; return(false); } }
public VisualStudioRunnerLogger(LoggerHelper loggerHelper) { this.loggerHelper = loggerHelper; }
public void Show() { //注册 log4net log4net.Config.XmlConfigurator.Configure(new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4config\\log.xml")); LoggerHelper.Info("1"); }