关于 .net 页面继承问题? 本帖最后由 ericSola 于 2009-09-08 15:32:57 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 空间名称"App_Code"和系统命名冲突,建议换个空间名称。 空间名“App_Code”是我新建文件的时候vs自动生成的我换了一个名称,还是会出现一样的错误 lz 你要这App_Code做什么? 如果你的是网站,App_Code 里的类 默认是没有空间,你根据需要命名;如果你是工程项目,App_Code 文件夹最好不要有,因为它会使得项目2次编译。要么你就建类库添加引用类库,要么你就直接加类文件。命名空间最好不要与系统的默认 如果是命名空间冲突问题起个别名using A=B; 你先不要再App_Code中建立这个类,就在外面建立好这个AdminPages类,然后再把这个类拖入到App_Code中 public partial class Main : AdminPages分部类用法的问题。仔细查看编译错误,其实出现错误不在上面那行,而是在Main.aspx.designer.cs里 。修改Main.aspx.designer.cs中,另外一个部分的partial class Main中 namespace就可以了。楼主的分给的太容易了,呵呵。多谢 不好意思,我没看懂什么意思Main.aspx.designer.cs 就这么几行代码要改哪里?//------------------------------------------------------------------------------// <auto-generated>// 此代码由工具生成。// 运行库版本:2.0.50727.1433//// 对此文件的更改可能会导致不正确的行为,并且如果// 重新生成代码,这些更改将会丢失。// </auto-generated>//------------------------------------------------------------------------------namespace cqjdcpm.admin { public partial class Main { }} 既然你的是项目就最好不要建立App_Code这文件夹了,建个类库,引用类库项目吧 貌似App_Code里不要命名空间都能找到方法的 我把 App_Code 文件夹下的 AdminPages.cs 命名空间去掉了Main.aspx.cs 文件代码为namespace cqjdcpm.admin{ public partial class Main : AdminPages { protected void Page_Load(object sender, EventArgs e) { } }}还是会提示 提示错误是:找不到类型或命名空间名称“AdminPages”(是否缺少using指令或程序集引用?) 我在 AdminPages.cs 文件里面新建一个方法public static string getTest() { return "this is a test."; }然后在Main.aspx.cs里面调用protected void Page_Load(object sender, EventArgs e) { Response.Write(AdminPages.getTest()); }运行会出现错误当前上下文中不存在名称“AdminPages” 1.删除工程2.向Solution中添加已有的Web,选择原来的工程文件夹3.添加AdminPages的命名空间,可以访问原因:楼主建立的是一个web工程,而不是一个Web.在Web中,App_Code中的代码是二次编译的,Web project中是认为它是一个普通的文件,并不会编译它 对呀就是楼上那个原因现在已经解决了我说下大致过程-------------------------选择App_Code文件夹里面的文件,在文件属性窗口把生成操作的值修改为编译去运行还会其实一个错误就是session的问题在需要用到session的页面page里面加上EnableSessionState="True"发现还是会有问题再修改Web.config文件在pages节点上加上 <pages enableSessionState="false">发现还是会有问题我靠我就郁闷了原来继承页面之后不能在构造函数里面写操作Session另外写一个方法操作session,再调那个方法就可以了-----ok 完了 VS2008里面gridview中添加编辑删除功能问题 关于创建相册的问题 用过NetAdvantage的WebGrid控件的大大们进。 asp显示数据库字段难题 Mainsoft for Java EE 使用问题 请教一个棘手的问题:DATAGRID 中 嵌套 DATAGRID 实现主从表.并且在 主 从 表都中实现 分页 编辑 等功能. asp.net如何连接mysql数据库,在线等 关于抓取请求后所访问的所有的URL 请教一个关于使用梅花雨日历出现的问题。谢谢热心人 vs2010老项目报错求解 PostBackUrl 实在没分了 请教个Asp的传值问题
我换了一个名称,还是会出现一样的错误
如果你是工程项目,App_Code 文件夹最好不要有,因为它会使得项目2次编译。要么你就建类库添加引用类库,要么你就直接加类文件。命名空间最好不要与系统的默认
分部类用法的问题。仔细查看编译错误,其实出现错误不在上面那行,而是在Main.aspx.designer.cs里 。
修改Main.aspx.designer.cs中,另外一个部分的partial class Main中 namespace就可以了。
楼主的分给的太容易了,呵呵。多谢
不好意思,我没看懂什么意思Main.aspx.designer.cs 就这么几行代码
要改哪里?
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行库版本:2.0.50727.1433
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------namespace cqjdcpm.admin {
public partial class Main {
}
}
namespace cqjdcpm.admin
{
public partial class Main : AdminPages
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}还是会提示
提示错误是:找不到类型或命名空间名称“AdminPages”(是否缺少using指令或程序集引用?)
public static string getTest()
{
return "this is a test.";
}然后在Main.aspx.cs里面调用
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(AdminPages.getTest());
}运行会出现错误
当前上下文中不存在名称“AdminPages”
2.向Solution中添加已有的Web,选择原来的工程文件夹
3.添加AdminPages的命名空间,可以访问原因:楼主建立的是一个web工程,而不是一个Web.
在Web中,App_Code中的代码是二次编译的,Web project中是认为它是一个普通的文件,并不会编译它
就是楼上那个原因
现在已经解决了
我说下大致过程
-------------------------选择App_Code文件夹里面的文件,在文件属性窗口把生成操作的值
修改为编译去运行还会其实一个错误
就是session的问题
在需要用到session的页面page里面加上EnableSessionState="True"发现还是会有问题
再修改Web.config文件
在pages节点上加上 <pages enableSessionState="false">发现还是会有问题
我靠
我就郁闷了原来继承页面之后不能在构造函数里面写操作Session
另外写一个方法操作session,再调那个方法就可以了-----ok 完了