public async Task <IActionResult> RenderView([FromServices] IViewRenderer viewRender) { ViewData["Type"] = 1; string result = await viewRender.RenderAsync(HttpContext, "TestView", new TestViewModel { Title = "Test view" }, ViewData); return(Ok(result)); }
public async Task <IActionResult> RenderCustomView([FromServices] IWebHostEnvironment env, [FromServices] IViewRenderer viewRender) { ViewData["Type"] = 2; string result = await viewRender.RenderAsync(HttpContext, "~/CustomViews/CustomTestView.cshtml", new TestViewModel { Title = "Test view" }, ViewData, true); return(Content(result)); }
public async Task <string> ExecuteAsync(FragmentContext context) { var fragmentType = context.Fragment.GetType(); var processMethodInfo = fragmentType.GetMethod(Constants.ProcessAsyncMethodName); var parameterInfos = processMethodInfo.GetParameters(); if (context.Fragment is RemoteFragment) { if (processMethodInfo.Invoke(context.Fragment, new object[1] { context.Model ?? new object() }) is Task <string> html) { return(await html); } return(string.Empty); } if (processMethodInfo.Invoke(context.Fragment, GetModel(parameterInfos?.Length > 0 ? parameterInfos[0].ParameterType : null, context)) is Task <FragmentViewResult> fragmentProcessTask) { var fragmentViewResult = await fragmentProcessTask; var htmlString = await _viewRenderer.RenderAsync(fragmentViewResult.ViewName, fragmentViewResult.Model); return(htmlString); } return(string.Empty); }
protected Task RenderViewAsync(IOwinEnvironment context, string viewName, object model, CancellationToken cancellationToken) { context.Response.StatusCode = 200; context.Response.Headers.SetString("Content-Type", Constants.HtmlContentType); return(_viewRenderer.RenderAsync(viewName, model, context, cancellationToken)); }
public async Task <IActionResult> CompareSerch(string title, int cat2, int?brand) { try { if (cat2 > 0) { var getAllProductByCatId = ((List <ProductModel>)(await _productrepo.GetAll()).Data).Where(x => x.P_EndLevelCatId == cat2).ToList(); if (!string.IsNullOrEmpty(title)) { getAllProductByCatId = getAllProductByCatId.Where(x => x.P_Title.Contains(title, StringComparison.InvariantCultureIgnoreCase)).ToList(); } if (brand != null && brand > 0) { getAllProductByCatId = getAllProductByCatId.Where(x => x.P_BrandId == brand).ToList(); } var model = await _viewRenderer.RenderAsync(this, "_productlist", getAllProductByCatId); return(new JsonResult(ResponseModel.Success(data: model))); } return(new JsonResult(ResponseModel.ServerInternalError(data: "error"))); } catch (Exception ex) { return(new JsonResult(ResponseModel.ServerInternalError(data: ex))); } }
public async Task <string> RenderAsync( string name, params Controller[] controllers) { var viewModel = new ApiModel(route => CallControllerAction(route, controllers)); return(await _viewRenderer.RenderAsync(name, viewModel)); }
public async Task <IActionResult> RegisterLogin(string code) { if (!string.IsNullOrEmpty(code)) { string rnd = TempData["rnd"].ToString(); string mob = TempData["mobile"].ToString(); if (rnd != code) { return(new JsonResult(ResponseModel.Error("کد وارد شده صحیح نمیباشد"))); } var User = ((List <UserModel>)((await _repository.GetAll()).Data)).FirstOrDefault(x => x.U_Phone == (string)mob); if (User != null) { var result = await _repository.UserLogin(User); if (result.Status == false) { return(new JsonResult(ResponseModel.Error(result.Msg))); } var loginuser = ((UserModel)result.Data); Response.Cookies.Append("HomeKitoUser", loginuser.Token); return(new JsonResult(ResponseModel.Success(msg: "ok"))); } else { UserModel um = new UserModel(); um.U_Role = 2; um.U_Name = ""; um.U_Family = ""; um.U_Email = "*****@*****.**"; um.U_Phone = mob; um.U_Password = "******"; var result = await _repository.Insert(um); if (result.Status) { var loginuser = ((UserModel)(await _repository.UserLogin(um)).Data); Response.Cookies.Append("HomeKitoUser", loginuser.Token); var view = await _viewRenderer.RenderAsync(this, "_RegisterSuccess", mob); return(new JsonResult(ResponseModel.Success(data: view, msg: null))); } await _sms.SignUp(mob, rnd); //return new JsonResult(result.Msg); return(new JsonResult(ResponseModel.Error(result.Msg))); } } return(RedirectToAction("Index", "Home")); }
public async Task <IEmailContent> RenderAsync() { ThrowIfInvalid(); var body = await _renderer.RenderAsync(ViewPath, this); return(new EmailContent( @from: From, subject: Subject, body: body, recipients: Recipients, cc: Cc)); }
public async Task <IActionResult> Placeholder([FromRoute] string name, [FromRoute] string mode) { var fragment = await _fragmentResolver.ResolveAsync(name); var fragmentOptions = _fragmentOptionsProvider.GetFragmentOptions(fragment); var placeHolderHtml = string.IsNullOrEmpty(fragmentOptions.PlaceHolderViewName) ? await fragment.GetPlaceHolderHtmlAsync() : await _viewRenderer.RenderAsync(fragmentOptions.PlaceHolderViewName, null); if (mode == "preview") { placeHolderHtml = AddAssetsToHtml(placeHolderHtml, fragmentOptions); } return(base.Content(placeHolderHtml, "text/html")); }
public async Task SendRazorEmailAsync(EmailContact sender, EmailContact recipient, string subject, string viewName, object vars) { var message = await _ViewRender.RenderAsync(viewName, vars); await SendEmailAsync(sender, recipient, subject, message); }
public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output) { output.TagName = "div"; Fragment fragment = await _fragmentResolver.ResolveAsync(Name); var fragmentOptions = _fragmentOptionsProvider.GetFragmentOptions(fragment); var fragmentContext = new FragmentContext { Fragment = fragment, OutputStream = ViewContext.HttpContext.Response.Body, Model = Model, FragmentOptions = fragmentOptions }; _fragmentContextProvider.AddContext(fragmentContext); _fragmentLogger.Info($"Executing fragment {Name}. Model : {JsonConvert.SerializeObject(fragmentContext.Model)}"); var placeHolderViewName = fragmentOptions?.PlaceHolderViewName; if (fragmentOptions?.IsSync == true || fragmentOptions?.IsSyncOnAjax == true && IsAjaxRequest(ViewContext.HttpContext.Request)) { output.SuppressOutput(); throw new NotImplementedException("Sync fragments are not implemented yet."); } else { fragmentContext.PlaceHolderId = Guid.NewGuid().ToString(); var placeHolderHtml = string.IsNullOrEmpty(placeHolderViewName) ? await fragment.GetPlaceHolderHtmlAsync() : await _viewRenderer.RenderAsync(placeHolderViewName, null); if (string.IsNullOrEmpty(placeHolderHtml) == false) { output.Content.SetHtmlContent(placeHolderHtml); } output.Attributes.SetAttribute(Constants.HtmlIdAttribute, fragmentContext.PlaceHolderId); output.TagMode = TagMode.StartTagAndEndTag; } }