信息内容页数据的调用及相关方法

1、信息表内容调用语法

Html.InfoData()

无参数则默认调用当前栏目对应的内容页的信息数据,此方法模板中最常用。

2、根据信息表名和信息id获取信息表内容数据

Html.InfoData(string infoTable, int infoId)

3、根据栏目Id和信息id调用信息表内容页数据

Html.InfoData(int columnId,int infoId)

4、获取当前信息Id,只在内容页模型有效。

Html.CurrentInfoId()

5、获取当前信息页栏目使用的信息表

Html.CurrentInfoTable()

6、获取信息内容页Url地址,有三个方法可获取

    6.1、参数1为表名称,参数2为信息id,参数3非必须参数,表示为是否显示域名前缀

Html.InfoDataUrl(string intoTable, int infoId,bool showDomain)

    6.2、参数1为栏目Id,参数2信息id,参数3非必须参数,表示为是否显示域名前缀

Html.InfoDataUrl(int columnId, int infoId,bool showDomain)

    6.3、 4.0.11版本新增加,参数1为信息行数据,参数2表示是否显示主栏目的url地址,当数据为副栏目数据时才有效,参数3同上。

Html.InfoDataUrl((object)data,bool showRealUrl,bool showDomain);

   


实例1:调用当前栏目内容页信息数据,此方式只能在栏目内容页模板中使用

@{
var infoData = Html.InfoData();
}
<div>
    <div>@infoData.Title</div>
    <div>@infoData.Thedate</div>
    <div>@Html.Raw(infoData.Content)</div>
</div>

备注:

Html.Raw() //此方法可直接输出html标签的字符串,如果不使用,带html标签的内容会采用HtmlEncode编码。


实例2:指定表名和id获取内容数据

@{
var infoData = Html.InfoData("news",1); //获取news表中id为1的数据
}
<div>
    <div>@infoData.Title</div>
    <div>@infoData.Thedate</div>
    <div>@Html.Raw(infoData.Content)</div>
</div>


实例3:指定表名和id获取和字段获取内容数据

@{
var infoData = Html.InfoData("news",1,"Title,Thedate,Content"); //获取news表中id为1的数据,并只读取title,thedate,content三个字段的内容
}
<div>
    <div>@infoData.Title</div>
    <div>@infoData.Thedate</div>
    <div>@Html.Raw(infoData.Content)</div>
</div>


实例4:返回json数据,主要用于制作Api,给小程序等第三方平台提供内容数据

@{
  Layout = null; //必须声明,不加载母版页框架,避免母版页html标签污染json数据。
  var responseData = Html.InfoData("news", 1); //需要输出的内容对象
  //输出json格式
   Html.ResponseJson(responseData); //注意此方法仅在v4.0.10及后续版本支持,之前版本请自行注释
  //4.0.10之前版本采用下面方式输出json格式,请自行删掉开头的注释符。
  //Response.Clear();
  //Response.ContentType = "application/json;charset=utf-8";
  //Response.Write(JsonHelper.JsonParse(responseData)); //对象转json格式输出
  //Response.Flush();
  //this.Context.ApplicationInstance.CompleteRequest();
}


7、上一篇,下一篇参,相关数据请考本章节的相关教程