问题一:在Default.aspx页面中有<%# getLength(Eval("Title"),19) %>一句,这是什么脚本?C#脚本?
为了截取字符串在App_Helper命名空间里写了个方法:
/// <summary>
/// 截取指定文本长度
/// </summary>
/// <param name="content">文本</param>
/// <param name="i">截取长度</param>
/// <returns>文本</returns>
public string GetLength(string content,int i)
{
if (content.Length > i)
{
return content.Substring(0, i) + "...";
}
else
return content;
}
然后在Default页面中运用:
在Default.aspx.cs里
/// <summary>
/// 截取指定长度字符串
/// </summary>
/// <param name="content">内容</param>
/// <param name="i">截取长度</param>
/// <returns>截取结果</returns>
public string getLength(string content, int i)
{
Helper helper = new Helper();
return helper.GetLength(content,i);
}
在前台Defult.aspx里面:
<%# getLength(Eval("Title"),19) %>提示编译错误:编译器错误消息: CS1502: 与“NanTunCoalMine._Default.getLengh(string, int)”最匹配的重载方法具有一些无效参数<td ><a href='Show.aspx?ID=<%# Eval("ID") %>'><%# getLengh(Eval("Title"),19) %> [<%# Convert.ToDateTime(Eval("Time")).ToString("yyyy-mm-dd") %>]</a></td>可是在“getLength(Eval("Title"),19)”的参数指定里没有任何错误啊到底是怎么回事?<%# %> 脚本表示什么?和C#后台代码有什么差别?
为了截取字符串在App_Helper命名空间里写了个方法:
/// <summary>
/// 截取指定文本长度
/// </summary>
/// <param name="content">文本</param>
/// <param name="i">截取长度</param>
/// <returns>文本</returns>
public string GetLength(string content,int i)
{
if (content.Length > i)
{
return content.Substring(0, i) + "...";
}
else
return content;
}
然后在Default页面中运用:
在Default.aspx.cs里
/// <summary>
/// 截取指定长度字符串
/// </summary>
/// <param name="content">内容</param>
/// <param name="i">截取长度</param>
/// <returns>截取结果</returns>
public string getLength(string content, int i)
{
Helper helper = new Helper();
return helper.GetLength(content,i);
}
在前台Defult.aspx里面:
<%# getLength(Eval("Title"),19) %>提示编译错误:编译器错误消息: CS1502: 与“NanTunCoalMine._Default.getLengh(string, int)”最匹配的重载方法具有一些无效参数<td ><a href='Show.aspx?ID=<%# Eval("ID") %>'><%# getLengh(Eval("Title"),19) %> [<%# Convert.ToDateTime(Eval("Time")).ToString("yyyy-mm-dd") %>]</a></td>可是在“getLength(Eval("Title"),19)”的参数指定里没有任何错误啊到底是怎么回事?<%# %> 脚本表示什么?和C#后台代码有什么差别?
的意思是读取数据库记录里面的 Title 的值,然后作为 getLength函数的参数,结果显示在这个位置
大小写
<%# GetLength(Eval("Title"),19) %>
< %= %>: 在程序执行时被调用,可以显示后台变量值
< % %>: 内联代码块里面可以在页面文件*.aspx或*.ascx文件里面嵌入后台代码
将数据绑定表达式包含在服务器控件或者普通的html元素的开始标记中属性名/属性值对的值侧。如:
<asp:TextBox ID="TextBox1" runat="server" Text='<%#数据绑定表达式%>' ></asp:TextBox><br />
此时数据的绑顶表达式可以是一个变量,也可以是一个带返回值的C#或者VB.NET方法,还可以是某个控件的某个属性的值
//这个写法没问题,Title字段是不是string类型,有没有出现DB.NULL??最有可能的时Title行可能为NULL