当前位置: 首页 > news >正文

衡阳市网站建设_网站建设公司_Tailwind CSS_seo优化

做自己网站,河北建设集团,wordpress图片地址,网站开发预算表Html.Partial和Html. RenderPartial用法Html.partial和RenderPartial的用法与区别Html.partial和RenderPartial都是输出html片段#xff0c;区别在于Partial是将视图内容直接生成一个字符串并返回#xff08;相当于有个转义的过程#xff09;#xff0c;RenderPartial方法是…Html.Partial和Html. RenderPartial用法Html.partial和RenderPartial的用法与区别Html.partial和RenderPartial都是输出html片段区别在于Partial是将视图内容直接生成一个字符串并返回相当于有个转义的过程RenderPartial方法是直接输出至当前 HttpContext因为是直接输出所以性能好。因此它们在视图中的使用方式是不同的MVC2输出到 HttpContext输出为string 直接到页面MVC3Html.Partial(BasicChart){Html.RenderPartial(BasicChart);}Html.partial和RenderPartial的其它三个重载很有用第二个重载{Html.RenderPartial(BasicChart,model);}用这个重载可以在部分视图里使用强类型然后在主视图中使用第二个参数传model过去而不用controller比如从list中传其中一项myClass过去第三个重载用来传ViewData同理如{Html.RenderPartial(BasicChart,ViewData[myData]);} 示例 div idlogindisplay                 *Html.Partial(_LogOnPartial)*                 {                     Html.RenderPartial(_LogOnPartial);                  }             /div   另相关资料 RenderBody、RenderSection、RenderPage、Html.RenderPartial、Html.RenderAction的作用和区别 1. RenderBody在Razor引擎中没有了“母版页”取而代之的是叫做“布局”的页面_Layout.cshtml放在了共享视图文件夹中。在这个页面中会看到标签里有这样一条语句RenderBody()其实它的作用和母版页中的服务器控件类似当创建基于此布局页面的视图时视图的内容会和布局页面合并而新创建视图的内容会通过布局页面的RenderBody()方法呈现在标签之间。这个方法不需要参数而且只能出现一次。 2. RenderPage从名称可以猜出来这个方法是要呈现一个页面。比如网页中固定的头部可以单独放在一个共享的视图文件中然后在布局页面中通过这个方法调用用法如下RenderPage(“~/Views/Shared/_Header.cshtml”) 带参数RenderPage(“~/Views/Shared/_Header.cshtml”,new{parmmy,parm2you)调用页面获取参数//获取 RenderPage() 传递过来的参数PageData[param] 3. RenderSection布局页面还有节Section的概念也就是说如果某个视图模板中定义了一个节那么可以把它单独呈现出来用法如下RenderPage(“~/Views/Shared/_Header.cshtml”) RenderBody() //模板里添加了一个节RenderSection(“head”)当然还要在视图中定义节否则会出现异常section head{ //do}为了防止因缺少节而出现异常可以给RenderSection()提供第2个参数RenderSection(SubMenu, false)或if (IsSectionDefined(SubMenu)){RenderSection(SubMenu, false)}else{pSubMenu Section is not defined!/p} 4.Html.Partial Partial 每次都会创建自己的 TextWriter 实例并且把内容缓存在内存中. 最后把所有 writer输出的内容发送到一个 MvcString对象中更多时候我们会使用 { Html.RenderPartial(Details); } 而不是Html.Partial RenderPage()和RenderPartial()的区别 RenderPage()调用的页面只能使用其传递过去的数据。而RenderPartial()是可以使用viewdata,model等数据的。 Html.RenderPartial和Html.RenderAction的区别 Html.RenderPartial适合用在重覆使用的UserControl并且只需要透过Model来呈现内容或是对于广告的UserControl也适合使用。 Html.RenderAction则会先去呼叫Controller的Action方法如果此UserControl是需要透过资料库取得资料来呈现透过Action来读取资料库此时会比较适合使用此方式。 5.Html.Partial(MyView) 以MvcHtmlString形式返回试图流遵循标准的路由规则。 Renders the MyView view to an MvcHtmlString. It follows the standard rules for view lookup (i.e. check current directory, then check the Shared directory). Html.RenderPartial(MyView)与Html.Partial()类似区别是直接输入到页面不进行缓存。 Does the same as Html.Partial(), except that it writes its output directly to the response stream. This is more efficient, because the view content is not buffered in memory. However, because the method does not return any output, Html.RenderPartial(MyView) wont work. You have to wrap the call in a code block instead: {Html.RenderPartial(MyView);}. RenderPage(MyView.cshtml)返回带路径、文件名等的特殊视图同Heml.RenderPartial()一样直接输出不进行缓存。可以传递model变量。 Renders the specified view (identified by path and file name rather than by view name) directly to the response stream, like Html.RenderPartial(). You can supply any model you like to the view by including it as a second parameter RenderPage(MyView.cshtml,MyModel) I prefer RenderPage(_LayoutHeader.cshtml) Over {Html.RenderPartial(_LayoutHeader);} Only because the syntax is easier and it is more readable. Other than that there doesnt seem to be any differences functionality wise.       2.spanHtml.Raw(aaabr/bb)/span 输出为aaa        bb   {     ViewBag.Title Indexbr/aa; } spanViewBag.Title/span 输出为Indexbr/aa           asp.net MVC3.0 中Html.Partial,Html.Action,Html.RenderPartial,Html.RenderAction 1、带有Render的方法返回值是void在方法内部进行输出不带的返回值类型为MvcHtmlString,所以只能这样使用 Html.Partial 对应 {Html.RenderPartial(....);} Html.Action 对应 {Html.RenderAction(....);} 2、Html.Partial可以直接提供用户控件名作为参数 而Html.Action需要有对应的Action在Action内部返回PartailResult(即retun PartialView())。 3、对于简单的没有任何逻辑的用户控件推荐使用Html.Partial对于需要设置一些Model的用户控件推荐使用Html.Action。当然有Model数据也是可以使用Html.Partial方法的可以看方法的重载。 4、使用Html.Action有个好处就是可以根据不同的场景选择不同的用户控件。比如Html.Action(UserInfoControl)在对应的 UserInfoControl这个Action中,在用户未登录的时候可以retun PartialView(LogOnUserControl);登录后可以retun PartialView(UserInfoControl); Html.Partial和Html.RenderPartial, Html.Action和Html.RenderAction的区别 Html.Partial返回的是一个字符串, Html.RenderPartial会将内容写入到response中, 返回void 在Razor中下面2中写法是等价的: Html.Partial(ViewName) {Html.RenderPartial(ViewName);  } 你可以使用 Html.Partial, 把Partial View的输出保存到变量中, 但是Html.RenderPartial不行. Html.RenderPartial会在执行的时候直接把输出写进Response. Html.Action和Html.RenderAction的区别和上面的就是一样的了。         3. MVC Ajax Helpers 在MVC中要实现Ajax有很多的方式有微软自己的MicrosoftAjax也可以用JQuery的AJax来实现如果对其他的JavaScript框架熟悉还可以采用其他的实现方案比如说Prototype等等。 以下是微软自己的实现方案。 需要预先加载的JavaScript文件     script srcUrl.Content(~/Scripts/MicrosoftAjax.js) typetext/javascript/script     script srcUrl.Content(~/Scripts/MicrosoftMvcAjax.js) typetext/javascript/script   在MVC中已经提供了下面几个现成的HTML Hepler Ajax.ActionLink()Ajax.BeginForm()Ajax.RouteLink()Ajax.BeginRouteForm()Ajax.ActionLink 使用ActionLink发送异步请求的方法 View div idmyPnl stylewidth: 300px; height: 30px; border: 1px dotted silver; /div Ajax.ActionLink(Click Me, GetTime, new AjaxOptions { UpdateTargetId myPnl }) Controller public ActionResult GetTime() {     return Content(DateTime.Now.ToString()); } 以上示例使用ActionLink超链接发送请求到GetTime返回一个ContentResult通过AjaxOptions中的UpdateTargetId属性指定了需要更新的页面元素。 AjaxOptions中还有其他可以指定的属性 Confirm 等效于javascript中的return confirm(msg)在点击该链接时先提示需要确认的信息。 HttpMethod 指定使用Get或者是Post方式发送Http请求 InsertMode 指定使用哪一种方式在指定的UpdateTargetId元素更新数据可以有三种方式  InsertAfter,   InsertBefore, or Replace 。默认为Replace LoadingElementDuration Loading元素显示的时间 LoadingElementId 可以指定在Http请求期间显示的Loading元素 OnBegin 在Http请求之前执行的javascript方法 OnComplete 在Http请求结束时执行的方法 OnFailure 在Http请求失败时执行的方法 OnSuccess 在Http请求成功时执行的方法 UpdateTargetId Http请求更新的页面元素 Url Http请求的Url 关于AjaxOptions中各方法的使用方法在之前关于ActionResult的介绍的文章中有相关的列子 JsonResult 注意点 OnComplete和OnSuccess的区别OnComplete是获取了Http请求时引发的此时页面还没有进行更新OnSuccess是在页面已经更新后引发的。ActionLink中的actionName和AjaxOption中的Url的关系两者分别产生的HTML如下但是执行的结果相同希望有高手能解释下这两者有无区别。a href/Home/GetTime data-ajax-update#myPnl data-ajax-modereplace data-ajaxtrueClick Me/a a href/ data-ajax-urlHome/GetTime data-ajax-update#myPnl data-ajax-modereplace data-ajaxtrueClick Me/a Ajax.BeginForm 该Html Hepler可以实现使用Ajax方式提交Form在指定的页面元素中显示提交的结果。 View model MvcAjax.Models.UserModel {     ViewBag.Title AjaxForm; }   div idmyPnl stylewidth: 300px; height: 30px; border: 1px dotted silver; /div   using (Ajax.BeginForm(SaveUser, new AjaxOptions { UpdateTargetId myPnl })) {     table         tr             td                 Html.LabelFor(m m.UserName)             /td             td                 Html.TextBoxFor(m m.UserName)             /td         /tr         tr             td                 Html.LabelFor(m m.Email)             /td             td                 Html.TextBoxFor(m m.Email)             /td         /tr         tr             td                 Html.LabelFor(m m.Desc)             /td             td                 Html.TextBoxFor(m m.Desc)             /td         /tr         tr             td colspan2                 input typesubmit valueSubmit /             /td         /tr     /table } Model using System.ComponentModel.DataAnnotations;   namespace MvcAjax.Models {     public class UserModel     {         [Display(Name Username)]         public string UserName { get; set; }           [Display(Name Email)]         public string Email { get; set; }           [Display(Name Description)]         public string Desc { get; set; }     } } Controller public ActionResult AjaxForm() {     return View(); }   [HttpPost] public ActionResult SaveUser(UserModel userModel) {     //Save User Code Here     //......       return Content(Save Complete!); } 以上示例代码实现了采用Ajax提交Form数据的大概方法在Ajax.BeginForm中同样使用AjaxOptions来设置Ajax请求的参数和Ajax.ActionLink中的使用方法相同。 其他 在介绍JavaScriptResult时曾经提到了该ActionResult在普通的请求中是直接当作文件Reponse出的但是在Ajax请求中便可以使用该Result并且执行Result中的JavaScript。 比如将上面的Conntroller更改为以下代码 [HttpPost] public ActionResult SaveUser(UserModel userModel) {     //Save User Code Here     //......       //return Content(Save Complete!);     return JavaScript(alert(Save Complete!);); }   便可在执行改Ajax请求之后执行JavaScriptResult中的语句。转载于:https://www.cnblogs.com/dxqNet/p/6592746.html
http://www.lebaoying.cn/news/101914.html

相关文章:

  • google关键词seo百度seo排名点击
  • 汕头网站快速排名优化移动软件开发工程师
  • 久久建筑网是个什么样的网站百度seo公司一路火
  • 网站建设需要哪些成本广州公司网站制作公司
  • 广州市企业网站建设上海专业做网站公司有哪些
  • 建企业网站建设注意问题代备案网站空间
  • 网站标题乱码docker wordpress mysql
  • 沈阳响应式网站建设网站导入题库怎么做的
  • 网站做优化的成本建网站报价明细表
  • 一级 做爰免费网站云匠网接单子容易吗
  • 网站建设开票项目是什么静态网页开发工具
  • 自助建站的软件网站进行内容设计时首先应该( ).
  • 无锡网站建设推广ps做网站要求高吗
  • 河南外贸网站制作常州青竹网络做网站
  • 菜馆网站制作浦东做网站
  • 个人网站模板html5网站的域名证书
  • 网站图片上的水印怎么做个人博客源码
  • 企业网站建设网页百度站长平台推出网站移动化大赛
  • 搜索网站做推广安卓网页视频下载
  • 广西网站推广建筑公司网站页面图片
  • 可以网上做单的网站有哪些win10 wordpress安装教程视频
  • 山东潍坊建设银行招聘网站优秀购物网站
  • 烟台外贸网站建设公司泰州seo平台
  • 网站问题图片ui设计师需要掌握的技能
  • 北京网站建设解决方案电子商务网站开发教程论文
  • 重庆免费网站制作品牌建设的规划与实施
  • 中国男女做网站外贸公司网址
  • 建设联结网同类网站深圳公司注册网址官方
  • 电子商务网站建设html房产律师网站模板
  • 做图用哪个素材网站wordpress演示数据库