1.标题超过限制字数后的字符,以符号“…”表示
<td>
<a href='../newscontent.aspx?newsid=<%# Eval ("id") %>' target="_blank" title='<%# Eval("title") %>'> <%# StringTruncat(Eval("title").ToString(),16,"...") %></a>
</td>
public static string StringTruncat(string oldStr, int maxLength, string endWith)
{
if (string.IsNullOrEmpty(oldStr))
// throw new NullReferenceException( "原字符串不能为空 ");
return oldStr + endWith;
if (maxLength < 1)
throw new Exception("返回的字符串长度必须大于[0] ");
if (oldStr.Length > maxLength)
{
string strTmp = oldStr.Substring(0, maxLength);
if (string.IsNullOrEmpty(endWith))
return strTmp;
else
return strTmp + endWith;
}
return oldStr;
}
2.鼠标停在标题链接上面时,显示标题全称
<td>
<a href='../newscontent.aspx?newsid=<%# Eval ("id") %>' target="_blank" title='<%# Eval("title") %>'> <%# StringTruncat(Eval("title").ToString(),16,"...") %></a>
</td>
3.aspnetpager控件使用注意:
ShowCustomInfoSection 属性
获取或设置显示用户自定义信息区的方式。
如果需要显示自定义的信息,需要设置ShowCustomInfoSection 属性为left或者right。
默认值为:never
ShowCustomInfoSection.Never
注意: 该属性值设为Left或Right时会在分页导航元素左边或右边划出一个专门的区域来显示有关用户自定义信息,设为Never时不显示。
参考文档:http://www.webdiyer.com/aspnetpager/docs/showcustominfosection/
4.freetextbox控件使用注意:
错误:提交新闻内容时出错
原因:
大多数脚本利用发生在用户可以将可执行代码(或脚本)插入您的应用程序时。默认情况下,ASP.NET 提供请求验证。只要窗体发送包含任何 HTML,该验证都会引发错误。
解决方案:
在对应.aspx文件的页面指令中添加 ValidateRequest=“false”
<%@ Page Title=“添加新闻_后台管理_牛腩新闻发布系统” Language=“C#” MasterPageFile="~/admin/m_common.master" AutoEventWireup=“true” CodeBehind=“addnews.aspx.cs” Inherits=“FrmWeb.admin.addnews” ValidateRequest=“false” %>
5.如何:通过对字符串应用 HTML 编码在 Web 应用程序中防止脚本侵入
针对4的问题,关闭了请求验证之后,怎么保证提交内容的安全性.
解决方法:
显示字符串之前,调用 HtmlEncode 方法。 HTML 元素会转换为浏览器将显示(而不解释为 HTML)的字符串表示形式。
示例:
private void Button1_Click(object sender, System.EventArgs e)
{
Label1.Text = Server.HtmlEncode(TextBox1.Text);
Label2.Text =
Server.HtmlEncode(dsCustomers1.Customers[0].CompanyName);
}
说明: 只有通过添加 @ Page 属性 ValidateRequest=“false”
在页中禁用请求验证时,此示例才起作用。建议不要在成品应用程序中禁用请求验证,因此,请确保在查看本示例之后重新启用请求验证。
参考文档:https://docs.microsoft.com/en-us/previous-versions/aspnet/a2a4yykt(v=vs.100)