asp.net未知的服务器标记错误

当写好一个自定义控件,在页面上注册好后再页面上添加一个试试,能正常看到效果,然而当执行这个页面的时候报错,未知的服务器标记,在网上查了查,原来还得在web.config中加上一段话

自定义控件

代码
namespace PureTest
{
    [ToolboxData(
"<{0}:Pager runat=server></{0}:Pager>")]
    
public class Pager:Control 
    {
        
public int CurrentPage
        {
            
getset;
        }

        
public int PageSize
        {
            
getset;
        }

        
public int TotalCount
        {
            
getset;
        }

        
//hack:这里应该把分页时的URL条件带上
        protected override void Render(HtmlTextWriter writer)
        {
            
base.Render(writer);
            
//var first = CurrentPage - 5;
            
//var end = CurrentPage + 5;
            
//var totalPage = GetPageCount();
            
//if (first < 1)
            
//{
            
//    first = 1;
            
//}
            
//if (end > totalPage)
            
//{
            
//    end = totalPage;
            
//}
            
//var sb = new StringBuilder();
            
//sb.Append("<div id='pager'>");
            
//for(var i=first;i<end;i++)
            
//{
            
//    if(i==CurrentPage)
            
//    {
            
//        sb.AppendFormat("<strong>{0}</strong>", i);
            
//    }
            
//    else
            
//    {
            
//        sb.AppendFormat("<a href='{0}.html'>{0}</a>", i);
            
//    }
            
//}
            
//sb.Append("</div>");
            
//writer.Write(sb.ToString());
            writer.Write("my first control");
        }

        
private int GetPageCount()
        {
            
return PageSize == 0 ? 0 : (TotalCount + PageSize - 1)/PageSize;
        }
    }
}

 

 

页面

 

代码
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="PureTest._Default" %>
<%@ Register TagPrefix="MC" Namespace="PureTest"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title></title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
    
<div style='height:30px;'></div>
    
<MC:Pager runat ="server"></MC:Pager>
    
</div>
    
</form>
</body>
</html>

 

 

web.config

 

代码
        <pages>
            
<controls>
                
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                
<add tagPrefix="MC" namespace="PureTest" assembly="PureTest"/>
            
</controls>
        
</pages>

 

 

参考链接:

http://blog.sina.com.cn/s/blog_55e42da60100i1t6.html

http://forums.asp.net/t/1337638.aspx

 

posted on 2010-12-07 13:44  .net小鸟  阅读(2816)  评论(0编辑  收藏  举报