public FuncResult GetList(SearchInsModel model) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功!" }; try { var query = from r in context.ApdFctInsurance join o in context.ApdDimOrg on r.OrgCode equals o.OrgCode select new ReturnWaterModel() { RecordId = r.RecordId, OrgName = o.OrgName, Town = o.Town, OrgCode = o.OrgCode, RegistrationType = o.RegistrationType, Address = o.Address, InsuranceMonth = r.InsuranceMonth, Remark = r.Remark }; query = query.Where(f => ( (string.IsNullOrWhiteSpace(model.orgcode) || f.OrgCode.Contains(model.orgcode)) && (string.IsNullOrWhiteSpace(model.orgname) || f.OrgName.Contains(model.orgname)) && (string.IsNullOrWhiteSpace(model.year) || f.PeriodYear.Equals(Convert.ToDecimal(model.year))) )); fr.Content = query.ToList(); return(fr); } catch (Exception ex) { throw new Exception("error", ex); } }
// 上传文件到服务器 public JsonResult Service() { List <IPostFileData> list = new List <IPostFileData>(); foreach (string key in Request.Files.Keys) { HttpPostedFileBase file = Request.Files[key]; string filename = file.FileName; if (filename.IndexOf(".") < 0) { filename = filename + ".jpg"; } byte[] filebytes = new byte[file.ContentLength]; file.InputStream.Read(filebytes, 0, filebytes.Length); PostFileData data = new PostFileData(); data.FileName = file.FileName; data.Name = key; data.Value = filebytes; list.Add(data); } Log.Info("收到图片{0}张", list.Count); if (list.Count <= 0) { return(Json(FuncResult.FailResult("请上传图片", (int)ApiStatusCode.BAD_REQUEST))); } FileSystemClient client = new FileSystemClient(AppConfig.FileSystem_AppID, AppConfig.FileSystem_AppSecret); var res = client.UploadFile(list.ToArray()); return(Json(res)); }
public FuncResult <SysUserInfo> Login(string userAccount, string password) { var result = new FuncResult <SysUserInfo>() { IsSuccess = false, Message = "账号或密码错误!" }; var entity = _context.SysUserInfo.SingleOrDefault(e => e.UserAccount == userAccount); if (entity != null && entity.UserPassword == password) { if (entity.ValidTime != null) { var currentDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); if (currentDate > entity.ValidTime) { result.Content = entity; result.Message = $"用户密码已过期,请联系管理员,过期时间{entity.ValidTime}"; result.IsSuccess = false; } } else { result.Content = entity; result.Message = "登录成功"; result.IsSuccess = true; } } return(result); }
private async void HyperlinkButtonDelete_Click(object sender, RoutedEventArgs e) { var dialog = new MessageDialog("are you sure to delete this template?"); dialog.Commands.Add(new UICommand("ok", cmd => { }, commandId: 0)); dialog.Commands.Add(new UICommand("cancel", cmd => { }, commandId: 1)); //设置默认按钮,不设置的话默认的确认按钮是第一个按钮 dialog.DefaultCommandIndex = 0; dialog.CancelCommandIndex = 1; //获取返回值 var result = await dialog.ShowAsync(); if (result.Label == "ok") { HyperlinkButton btn = sender as HyperlinkButton; string tempName = btn.CommandParameter.ToString(); FuncResult funcResult = await EsService.DeleteTemplate(esdata.EsConnInfo, tempName); if (funcResult.Success == false) { PageUtil.ShowMsg(funcResult.Message); return; } else { InitData(); } } }
public ActionResult DeleteFunc() { if (Session["userName"] != null) { var stream = HttpContext.Request.InputStream; string dataJson = new StreamReader(stream).ReadToEnd(); //json 字符串在此 int id = 0; int.TryParse(dataJson, out id); FuncResult result = db.FuncResult.Find(id); if (result != null) { db.FuncResult.Remove(result); db.SaveChanges(); return(Content("Success")); } else { return(Content("Error")); } } else { return(RedirectToAction("Login", "Home")); } }
private async void btnSave_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(IndexName.Text.Trim())) { (new MessageDialog("please input the index name.")).ShowAsync(); //args.Cancel = true; return; } if (string.IsNullOrEmpty(TypeName.Text.Trim())) { (new MessageDialog("please input the type name.")).ShowAsync(); //args.Cancel = true; return; } string json = ""; if (checkAllField(ref json) == false) { //args.Cancel = true; return; } await this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() => { result = await EsService.CreateIndex(esdata.EsConnInfo, IndexName.Text.Trim(), json); if (result.Success == false) { //args.Cancel = true; (new MessageDialog(result.Message)).ShowAsync(); return; } this.Hide(); }); }
public FuncResult Update(string recordid, PostRdModel model, string userid) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功" }; try { if (string.IsNullOrWhiteSpace(recordid)) { fr.IsSuccess = false; fr.Message = "参数接收异常!"; return(fr); } ApdFctRD rd = context.ApdFctRD.FirstOrDefault(f => f.RecordId.Equals(recordid)); rd.IsHighTech = model.IsHighTech; rd.RDExpenditure = model.RDExpenditure; rd.Remark = model.Remark; rd.LastUpdateDate = DateTime.Now; rd.LastUpdatedBy = Convert.ToDecimal(userid); context.ApdFctRD.Update(rd); context.SaveChanges(); return(fr); } catch (Exception ex) { fr.IsSuccess = false; fr.Message = $"{ex.InnerException},{ex.Message}"; throw new Exception("error", ex); } }
public ActionResult Details(int?id) { if (!id.HasValue) { return(RedirectToAction("index")); } var model = new FuncResult <BankAccountViewModel>(); var daAcct = new Tnet_Bank_Account(); if (!daAcct.SelectByPk(id.Value)) { model.Message = "未找到银行卡详细信息"; model.StatusCode = (int)404; } else { model.Success = true; model.StatusCode = 1; model.Message = null; model.Content = MapProvider.Map <BankAccountViewModel>(daAcct.DataRow); if (string.IsNullOrEmpty(model.Content.BRANCH_NO)) { model.Content.BRANCH_NO = "请填写联行号"; } if (!string.IsNullOrEmpty(model.Content.REMARKS)) { model.Content.REMARKS = xUtils.GetValidateRemarks(model.Content.REMARKS); } } return(View(model)); }
public FuncResult GetListPagination(SearchOrgModel model) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功" }; try { var query = from o in context.ApdDimOrg select o; query = query.Where(f => (string.IsNullOrEmpty(model.orgname) || f.OrgName.Contains(model.orgname)) && (string.IsNullOrEmpty(model.orgcode) || f.OrgCode.Contains(model.orgcode)) && (string.IsNullOrEmpty(model.year) || f.PeriodYear.Equals(Convert.ToDecimal(model.year)))); int count = query.Count(); if (model.limit * model.page >= count) { model.page = 0; } var data = query.Skip(model.limit * model.page).Take(model.limit); fr.Content = new { data = data, total = count }; return(fr); } catch (Exception) { throw; } }
public FuncResult Add(PostOrgModel mode, string userid) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功" }; try { ApdDimOrg org = new ApdDimOrg() { RecordId = Guid.NewGuid().ToString(), CreationDate = DateTime.Now, //CreatedBy = Convert.ToDecimal(userid), LastUpdateDate = DateTime.Now, //LastUpdatedBy = Convert.ToDecimal(userid) }; org = MappingHelper.Mapping(org, mode); context.ApdDimOrg.Add(org); context.SaveChanges(); return(fr); } catch (Exception) { throw; } }
public FuncResult Update(string recordid, PostElectricModel model, string userid) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功" }; try { if (string.IsNullOrWhiteSpace(recordid)) { fr.IsSuccess = false; fr.Message = "参数接收异常!"; return(fr); } ApdFctElectric electric = context.ApdFctElectric.FirstOrDefault(f => f.RecordId.Equals(recordid)); electric.NetSupply = model.NetSupply; electric.Spontaneous = model.Spontaneous; electric.Remark = model.Remark; electric.LastUpdateDate = DateTime.Now; electric.LastUpdatedBy = Convert.ToDecimal(userid); context.ApdFctElectric.Update(electric); context.SaveChanges(); return(fr); } catch (Exception ex) { fr.IsSuccess = false; fr.Message = $"{ex.InnerException},{ex.Message}"; throw new Exception("error", ex); } }
private static FuncResult <int?> GetIntroducerId(string refereeCode) { if (string.IsNullOrEmpty(refereeCode) && AppConfig.RegisterRefereeRequired) { return(FuncResult.FailResult <int?>("必须填写推荐人")); } if (string.IsNullOrEmpty(refereeCode)) { return(FuncResult.SuccessResult(default(int?))); } var fac = UserModuleFactory.GetUserModuleInstance(); IUser refereeUser = null; if (refereeCode.StartsWith("U")) { refereeUser = fac?.GetUserByCode(refereeCode); } else { int userid; if (!int.TryParse(refereeCode.Replace("U", ""), out userid)) { return(FuncResult.FailResult <int?>("无效的邀请码")); } refereeUser = fac?.GetUserByID(userid); } if (refereeUser == null) { return(FuncResult.FailResult <int?>("推荐人账号不存在")); } return(FuncResult.SuccessResult(refereeUser?.UserId)); }
private void AddErrors(FuncResult result) { foreach (var error in result.Errors) { ModelState.AddModelError("", error); } }
public FuncResult Handler(string userCode, string userPwd, string mobileno, string smsContent) { try { Tsms_Thirdparty daThirdparty = null; string error; if (!SmsUtils.CheckUserCode(userCode, userPwd, mobileno, out daThirdparty, out error)) { return(FuncResult.FailResult(error)); } ISmsProvider sms = SmsServiceFactory.GetSmsServiceByChannel(daThirdparty.Channel_Id, out error); if (sms == null) { return(FuncResult.FailResult(error)); } SmsServiceProvider provider = new SmsServiceProvider(sms, daThirdparty.Appid, mobileno, smsContent); if (!provider.Send()) { return(FuncResult.FailResult(provider.PromptInfo.CustomMessage)); } return(FuncResult.SuccessResult()); } catch (Exception ex) { Log.Error("handler异常", ex); return(FuncResult.FailResult(ex.Message)); } }
public void TestFuncParralel() { var R = new Random(); Double[] Data = new Double[100]; for (Int32 I = 0; I < Data.Length; I++) { Data[I] = R.NextDouble(); } FuncResult <String> Out = Parallel.Func.ForEach(Data, ParralelTest.ConvertItem); Out.WaitAll(); if (Out.Output.Length != Data.Length) { Assert.Fail("Output should be the same length as input"); } for (Int32 I = 0; I < Data.Length; I++) { Assert.IsTrue(ConvertItem(Data[I]) == Out.Output[I], $"Item did not convert well: {Data[I]}=={Out.Output[I]}"); } }
public T RunMethodWithTimeout <T>(Func <T> func, int timeout) { var funcWrap = new Func <FuncResult>(() => { var r = new FuncResult { exception = null }; try { r.result = func(); } catch (Exception ex) { r.result = null; r.exception = ex; } return(r); }); var result = Execute(funcWrap, timeout); if (result.exception != null) { throw result.exception; } return((T)result.result); }
public FuncResult <ThirdPartyLoginResult> Login(int clientSource, string clientSys, string deviceId, string clientVer, string ipAddress, string session_id, int appId) { if (this._user == null) { return(FuncResult.FailResult <ThirdPartyLoginResult>("未注册", 404)); } LoginProvider localLogin = new LoginProvider(_user.UserCode, null, "basic"); localLogin.IgnorePassword = true; if (!localLogin.Login(clientSource, clientSys, deviceId, ipAddress, session_id, clientVer, appId)) { return(FuncResult.FailResult <ThirdPartyLoginResult>(localLogin.PromptInfo.CustomMessage, (int)localLogin.PromptInfo.ResultType)); } var data = new ThirdPartyLoginResult { Token = localLogin.Token, UserCode = _user.UserCode, Expires = localLogin.OAuthUser.Expire_In, RefreshExpires = localLogin.OAuthUser.Refresh_Expire_In, RefreshToken = localLogin.OAuthUser.Refresh_Token, Openid = localLogin.OAuthUser.Open_Id }; return(FuncResult.SuccessResult(data)); }
protected async Task <FuncResult <T> > QueryAsync <T>(Func <ApplicationDbContext, Task <FuncResult <T> > > lambda) { var result = new FuncResult <T>(); try { using (var dbContext = serviceScope.ServiceProvider.GetRequiredService <ApplicationDbContext>()) { using (var dbContextTransaction = dbContext.Database.BeginTransaction()) { try { result = await lambda(dbContext); dbContextTransaction.Commit(); } catch (ThreadInterruptedException tie) { throw tie; } catch (Exception e) { dbContextTransaction.Rollback(); AppendExceptionEventLogToFile(e); result = new FuncResult <T>(default, false, FuncResultCode.Exception, e.ToString());
protected FuncResult <Session> GetSessionInternal(string sessionId) { if (!sessions.ContainsKey(sessionId)) { return(FuncResult.Failed <Session>()); } return(sessions[sessionId].AsFuncResult()); }
public FuncResult Handler(string interfaceName, string dataJson) { FuncResult result = new FuncResult(); try { if ("sms_service".Equals(interfaceName, StringComparison.OrdinalIgnoreCase)) { var args = JsonProvider.JsonTo <SmsArgs>(dataJson); if (args == null) { return(FuncResult.FailResult("参数为空")); } result = this.Handler(args.UserCode, args.UserPwd, args.Mobileno, args.Content); } else if ("validate_code_send_service".Equals(interfaceName, StringComparison.OrdinalIgnoreCase)) { var args = JsonProvider.JsonTo <SendValidateCodeArgs>(dataJson); if (args == null) { return(FuncResult.FailResult("参数为空")); } SmsValidCodeFacade valid = new SmsValidCodeFacade(args.UserCode, args.UserPwd); bool res = valid.SendSmsValidCode(args.Mobileno, args.Gid, args.AppName); result.Success = res; result.Message = res ? null : valid.PromptInfo.CustomMessage; result.StatusCode = res ? 1 : 4; } else if ("validate_code_verify_service".Equals(interfaceName, StringComparison.OrdinalIgnoreCase)) { var args = JsonProvider.JsonTo <CodeVerificationArgs>(dataJson); if (args == null) { return(FuncResult.FailResult("参数为空")); } SmsValidCodeFacade valid = new SmsValidCodeFacade(args.UserCode, args.UserPwd); bool isSuccess = valid.ValidSmsCode(args.Mobileno, args.Gid, args.Code); result.Success = isSuccess; result.Message = isSuccess ? null : valid.PromptInfo.CustomMessage; result.StatusCode = isSuccess ? 1 : 4; } else { result.Success = false; result.Message = "未找到指定的服务[" + interfaceName + "]"; result.StatusCode = 404; } } catch (Exception ex) { Log.Error("API-Handler异常", ex); result.Success = false; result.Message = "系统错误"; result.StatusCode = 500; } return(result); }
public FuncResult UpdateDetailData(string key, [FromBody] ApdFctDistrict model) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "Ok" }; try { if (model == null) { fr.IsSuccess = false; fr.Message = "未正常接收参数!"; return(fr); } foreach (var item in model.detaillist) { var cd = context.ApdFctLandDistrict.FirstOrDefault(f => f.RecordId.Equals(item.RecordId)); cd.LandNo = item.LandNo; cd.Area = item.Area; cd.ShareDesc = item.ShareDesc; cd.RightType = item.RightType; cd.Purpose = item.Purpose; cd.BeginDate = item.BeginDate; cd.EndDate = item.EndDate; cd.Remark = item.Remark; cd.LastUpdateDate = DateTime.Now; context.ApdFctLandDistrict.Update(cd); } using (IDbContextTransaction trans = context.Database.BeginTransaction()) { try { context.SaveChangesAsync(); trans.Commit(); } catch (Exception ex) { trans.Rollback(); fr.IsSuccess = false; fr.Message = $"{ex.InnerException},{ex.Message}"; return(fr); throw new Exception("error", ex); } } return(fr); } catch (Exception ex) { throw new Exception("error", ex); } }
public JsonResult Modify(Entities.ViewModels.UserModifyModel model) { FuncResult result = new FuncResult(); UserFacade uf = new UserFacade(); result.Success = uf.ModifyUserProfile(model); result.Message = result.Success ? null : uf.PromptInfo.CustomMessage; result.StatusCode = result.Success ? 1 : (int)uf.PromptInfo.ResultType; return(Json(result)); }
public ActionResult VipToQianYue(int resultId) { FuncResult funcResult = db.FuncResult.Find(resultId); funcResult.IsLead = 3; db.Entry(funcResult).State = EntityState.Modified; int result = db.SaveChanges(); return(Json(new { data = result }, JsonRequestBehavior.AllowGet)); }
public JsonResult Modify(UserModifyModel model) { FuncResult result = new FuncResult(); UserProfileModifyProvider uf = new UserProfileModifyProvider(); result.Success = uf.ModifyProfile(model); result.Message = result.Success ? null : uf.PromptInfo.CustomMessage; result.StatusCode = result.Success ? 1 : (int)uf.PromptInfo.ResultType; return(Json(result)); }
public JsonResult Bind(BankCardInfo card) { FuncResult result = new FuncResult(); BankCardProvider provider = new BankCardProvider(); result.Success = provider.Bind(card); result.StatusCode = result.Success ? 1 : (int)provider.PromptInfo.ResultType; result.Message = result.Success ? null : provider.PromptInfo.CustomMessage; return(Json(result)); }
/// <summary> /// 创蓝通道发送短信 /// </summary> /// <param name="mobileno">目标手机号</param> /// <param name="msg">短信息内容</param> /// <param name="extno">扩展号码,纯数字(1-3位)</param> /// <returns></returns> public FuncResult SendSmsByChuangLan(string mobileno, string smsContent, string extno) { var dic = GetErrorDictionary(); FuncResult result = new FuncResult(); string postStrTpl = "account={0}&pswd={1}&mobile={2}&msg={3}&needstatus=true&product=&extno={4}"; UTF8Encoding encoding = new UTF8Encoding(); byte[] postData = encoding.GetBytes(string.Format(postStrTpl, this._channel.Access_Name, this._channel.Access_Key, mobileno, smsContent, extno)); try { HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(this._channel.Service_Url); myRequest.Method = "POST"; myRequest.ContentType = "application/x-www-form-urlencoded"; myRequest.ContentLength = postData.Length; Stream newStream = myRequest.GetRequestStream(); // Send the data. newStream.Write(postData, 0, postData.Length); newStream.Flush(); newStream.Close(); HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse(); if (myResponse.StatusCode == HttpStatusCode.OK) { StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8); string respText = reader.ReadToEnd(); Log.Info(respText); TextReader tr = new System.IO.StringReader(respText); var resText = tr.ReadLine(); var msgid = tr.ReadLine(); var array = resText.Split(','); var isSuccess = array[1] == "0"; this.SendNo = msgid; result.Success = isSuccess; result.Message = dic.ContainsKey(array[1]) ? dic[array[1]] : "发送失败"; result.StatusCode = isSuccess ? 1 : 400; return(result); } result.Success = false; result.Message = "网络链接失败"; result.StatusCode = 503; return(result); } catch (Exception ex) { result.Success = false; result.Message = "连接超时"; result.StatusCode = 500; return(result); } }
/// <summary> /// 写入到数据表 /// ? /// </summary> /// <returns></returns> public FuncResult WriteData(IEnumerable <ApdFctLandDistrict> list, string year) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功!" }; try { var _year = Convert.ToDecimal(year); var dm = list.Where(f => !context.ApdDimOrg.Select(g => g.OrgCode).Contains(f.OrgCode)); if (dm != null && dm.Count() > 0) { fr.IsSuccess = false; fr.Message = $"未找到配置的企业信息,统一信息代码为{string.Join(',', dm.Select(g => g.OrgCode))}!"; return(fr); } foreach (var item in list) { if (isAlreadyExport(item.OrgCode, year)) { //continue; } context.ApdFctLandDistrict.Add(item); } //list.ToList().ForEach(c => c.PeriodYear = _year); //context.ApdFctGas.AddRange(list); using (IDbContextTransaction trans = context.Database.BeginTransaction()) { try { context.SaveChanges(); trans.Commit(); } catch (Exception ex) { trans.Rollback(); fr.IsSuccess = false; fr.Message = $"{ex.InnerException},{ex.Message}!"; return(fr); throw new Exception("error", ex); } } } catch (Exception ex) { fr.IsSuccess = false; fr.Message = $"{ex.InnerException},{ex.Message}!"; return(fr); throw new Exception("error", ex); } return(fr); }
/// <summary> /// 获取账单 /// </summary> /// <returns></returns> public ActionResult List(TradeDetailsArgs arg) { UserPurseProvider upp = new UserPurseProvider(); FuncResult <Winner.Balance.WebService.Client.Modes.UserPurse> purseResult = null; eBankAccountType acctType = (eBankAccountType)arg.AccountType; switch (acctType) { case eBankAccountType.金币: purseResult = upp.UserGoldCoinPurse(Package.UserId); break; case eBankAccountType.现金: purseResult = upp.UserCashPurse(Package.UserId); break; } if (purseResult == null) { return(Json(FuncResult.FailResult("未找到账单信息", (int)ApiStatusCode.DATA_QUERY_FAIL))); } if (!purseResult.Success) { return(Json(purseResult)); } QueryProvider qp = new QueryProvider(); var purseHisResult = qp.PurseHis(purseResult.Content.PurseCode, null, arg.PageIndex, arg.PageSize, arg.StartDate, arg.EndDate); if (!purseHisResult.Success) { return(Json(purseHisResult)); } FuncResult <object> listResult = new FuncResult <object>(); listResult.Success = true; listResult.Message = null; listResult.StatusCode = 1; if (purseHisResult.Content != null && purseHisResult.Content.Data != null) { List <object> list = new List <object>(); foreach (var item in purseHisResult.Content.Data) { var li = new { Createtime = item.Createtime, Amount = item.Amount, Remarks = item.Remarks }; list.Add(li); } listResult.Content = PageList <object> .Instance(arg.PageIndex, arg.PageSize, purseHisResult.Content.Count, list); } return(Json(listResult)); }
public async Task <FuncResult> DeleteData(string key) { FuncResult fr = new FuncResult() { IsSuccess = true, Message = "操作成功" }; try { //if (key.GetType() == typeof(string)) //{ //} if (string.IsNullOrWhiteSpace(key)) { fr.IsSuccess = false; fr.Message = "未接收到参数信息!"; } var _key = Convert.ToDecimal(key); ApdFctTAx entity = context.ApdFctTAx.FirstOrDefault(f => f.RECORD_ID.Equals(_key)); if (entity == null) { fr.IsSuccess = false; fr.Message = "异常参数,未找到数据!"; } //List<ApdFctLandDistrict> listtown = context.ApdFctLandDistrict.Where(f => f.RecordId.Equals(key)).ToList(); //删除 context.ApdFctTAx.RemoveRange(entity); using (IDbContextTransaction trans = context.Database.BeginTransaction()) { try { await context.SaveChangesAsync(); trans.Commit(); } catch (Exception ex) { trans.Rollback(); fr.IsSuccess = false; fr.Message = $"{ex.InnerException},{ex.Message}"; throw new Exception("error", ex); } } return(fr); } catch (Exception ex) { throw new Exception("error", ex); } }
public JsonResult SendValidCode(int PwdType) { Log.Info("UserCode={0}&PWDTYPE={1}", Package.UserCode, PwdType); FuncResult result = new FuncResult(); SmsValidateProvider valid = new SmsValidateProvider(Package.UserCode, (SmsValidateType)PwdType); result.Success = valid.SendCode(); result.Message = result.Success ? null : valid.PromptInfo.CustomMessage; result.StatusCode = result.Success ? 1 : (int)valid.PromptInfo.ResultType; return(Json(result)); }
public void 値型の出力引数を伴う関数をResultを返す関数に変換できる(FuncResult fr, object expectedSuccess, Type expectedFailure) { var f = F.ToResultFunc(); if (expectedFailure != null) { Assert.That(f(fr).GetFailureOr(null), Is.TypeOf(expectedFailure)); } else { Assert.That(f(fr), Is.EqualTo(Result.NewSuccess<int, Exception>((int)expectedSuccess))); } }
public void 値型の出力引数を伴う関数をOptionを返す関数に変換できる(FuncResult fr, object expected) { var f = F.ToOptFunc(); Assert.That(f(fr), Is.EqualTo(expected == null ? Option<int>.None : Option.Some((int)expected))); }