petshop中这样的代码很多,如下:using System;
using System.Collections.Generic;
using System.Web.UI.WebControls;namespace PetShop.Web {
public partial class Default : System.Web.UI.Page {        /// <summary>
        /// Redirect to Search page
        /// </summary>
protected void btnSearch_Click(object sender, EventArgs e) {
            WebUtility.SearchRedirect(txtSearch.Text);
}
}
}上面加粗的一行就是,但是我在我项目中使用时自己键入就会编译出错,请问要怎么用呢?

解决方案 »

  1.   

    就是那个格式namespace PetShop.Web {}你的是否缺少}
      

  2.   

    是不是只改了代码文件,没有改页面文件
    <%@ Page AutoEventWireup="true" CodeFile="~/Default.aspx.cs" EnableViewState="false" Inherits="PetShop.Web.Default" Language="C#" %>Inherits="PetShop.Web.Default"这里的类名要和你代码文件里的一样
      

  3.   

    命名空间不是这样子用的!
    如果你要引用命名空间,就在ASPX页面头部用using
    如果你要声明命名空间就在你的App_Code类文件夹里创建类,在类里声明命名空间
    using System.Web.UI.HtmlControls;
    using System.Data.SqlClient;
    namespace App_Code
    {
        /// <summary>
        /// MymySiteDB 的摘要说明
        /// </summary>
        public class MymySiteDB
        {类
            public string NotWant(string siteid)
            {方法
            }
        }
    }
      

  4.   

    命名空间不是这样子用的! 
    如果你要引用命名空间,就在ASPX页面头部用using 
    如果你要声明命名空间就在你的App_Code类文件夹里创建类,在类里声明命名空间 
    using System.Web.UI.HtmlControls; 
    using System.Data.SqlClient; 
    namespace App_Code 

        ///  <summary> 
        /// MymySiteDB 的摘要说明 
        ///  </summary> 
        public class MymySiteDB 
        {类 
            public string NotWant(string siteid) 
            {方法 
            } 
        } 
    }
      

  5.   

    谢谢,正如四楼所说,是我在aspx文件中的Inherits项中没有引用对命名空间,我手工改过来后就没有错误了。但又好现一个问题,那就是如果我添加了新的页面后,又要手工改一次,请问有没有简便点的方法让vs在新建页面时自动添加指定的命名空间。楼上说的在分层项目的属性中设置是指哪里,是不是设置过了就可以在新建面时vs2008自动添加指定的命名空间。
      

  6.   

    你可以把命名空间,引用进来,
    比如 你现在是 namespace PetShop.Web {}
    可以改成 using PetShop.Web;和那些cs文件中的using放一起就行
    aspx页中就不用改了。
      

  7.   

    很早以前我听说asp.net 是codebehind的模式,sspx .cs 不用加名字控件
    文件夹_文件夹_类名
      

  8.   

    是否可以自动在添加新的页面时由vs2008自动把代码包含在命名空间中,而不用自己去修改aspx页面的inherit和后台cs文件的namespace。
      

  9.   

    你在.cs文件中添加了命名空间后,同时还得修改aspx文件得顶部,如下<%@ Page AutoEventWireup="true" CodeFile="~/Default.aspx.cs" EnableViewState="false" Inherits="PetShop.Web.Default" Language="C#" %> 
      

  10.   

    谢谢楼上,不过这个问题4楼已经解决,但这不是问题的关键,我的问题其实主要是:是否可以自动在添加新的页面时由vs2008自动把代码包含在命名空间中,而不用自己去修改aspx页面的inherit和后台cs文件的namespace。
      

  11.   

    在后台加了命名空间,前台的Inherits也要修改
      

  12.   

    你可以把命名空间,引用进来, 
    在后台加了命名空间,前台的Inherits也要修改
      

  13.   

    问题解决,原来只要在项目中添加网站为web应用程序,然后在default namespace中设置即可。
    谢谢大家热心解答,祝你们天天开心!