DataContract

数据契约

http://www.cnblogs.com/Gavinzhao/archive/2010/06/01/1748736.html

https://msdn.microsoft.com/zh-cn/library/system.runtime.serialization.datacontractattribute.aspx

Html.FrontHtml.Position("main") 详解

1.首先我们打开工程文件,在搜索框里写上FrontHtml查找到FrontHtmlHelper类,如下图:

下面是关于Position的相关方法。

        #region Position
public virtual IHtmlString Position(string positionID)
{
return Position(positionID, "");
} public virtual IHtmlString Position(string positionID, string defaultContent)
{
return Position(positionID, () => defaultContent);
}
public virtual IHtmlString Position(string positionID, Func<string> defaultContentFunc)
{
if (PageContext.PageRequestContext.RequestChannel == FrontRequestChannel.Design)
{
return new PageDesignHolder(this, positionID);
}
else
{
var positions = GetContentsForPosition(positionID);
if (positions.Length == )
{
defaultContentFunc = defaultContentFunc == null ? () => "" : defaultContentFunc;
return new HtmlString(defaultContentFunc());
}
else
{
var htmlStrings = RenderPositionContents(positions).ToArray();
return new AggregateHtmlString(htmlStrings);
} }
} public virtual IHtmlString Position(string positionID, bool requireMembershipAuthentication, params string[] membershipGroups)
{
if (PageContext.PageRequestContext.RequestChannel == FrontRequestChannel.Design)
{
return new PageDesignHolder(this, positionID);
}
else
{
if (requireMembershipAuthentication)
{
var permission = new PagePermission() { RequireMember = requireMembershipAuthentication, AllowGroups = membershipGroups };
if (!permission.Authorize(Html.ViewContext.HttpContext.Membership().GetMember()))
{
return new HtmlString("");
}
}
return Position(positionID);
}
}

下面来详细解释下。

一共有4个重载函数分别是:

public virtual IHtmlString Position(string positionID)

public virtual IHtmlString Position(string positionID, string defaultContent)

public virtual IHtmlString Position(string positionID, Func<string> defaultContentFunc)

public virtual IHtmlString Position(string positionID, bool requireMembershipAuthentication, params string[] membershipGroups)

这里如果有不明白的话可以,可以参考一下以下的知识:

1.positionID的意思就是你的HTML元素的ID。

2.如果对() => defaultContent)不理解的人,可以参看这里

3.对于Func<string>不理解的可以看这里

最新文章

  1. Redis客户端连接池
  2. 通过a标签在页面上显示视频网站中的视频
  3. JQuery动画效果
  4. 成都Uber优步司机奖励政策(2月3日)
  5. Church encoding
  6. poj_3461: Oulipo
  7. Previous operation has not finished;run &#39;cleanup&#39; if it was interrupted;Please execute the &#39;Cleanup&#39; command.
  8. ZOJ 1532 Internship (Dinic)
  9. String类中的常用方法
  10. java8模拟grouby方法
  11. 将一个符合URL格式的字符串变成链接
  12. LevelDB源码分析--Cache及Get查找流程
  13. 牛掰本机限速软件appband
  14. python 线性查找
  15. magento小常识
  16. React中父子组件间的通信问题
  17. JSP页面乱码全解析
  18. Selenium - Switch &amp; Select Api
  19. Rem实现移动端适配
  20. 剑桥offer(31~40)

热门文章

  1. 通过c程序更改文件的ctime和mtime
  2. PHP的输出缓冲区(转)
  3. [搜索引擎]Sphinx的介绍和原理探索
  4. Unity3D游戏开发初探—4.开发一个“疯狂击箱子”游戏
  5. 企业IT管理员IE11升级指南【6】—— Internet Explorer 11面向IT专业人员的常见问题
  6. HTML、CSS、JS对unicode字符的不同处理
  7. [Unity][Heap sort]用Unity动态演示堆排序的过程(How Heap Sort Works)
  8. js动态生成选项之考试系统(一)
  9. Optimistic Concurrency VS. Pessimistic Concurrency Control
  10. Struts2.X——搭建