| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3224 人关注过本帖
标题:[求助]在aspx中调用cs定义的类出错。
取消只看楼主 加入收藏
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
 问题点数:0 回复次数:7 
[求助]在aspx中调用cs定义的类出错。

两个文件:test.aspx,testcls.cs,在testcls.cs文件中定义了一个类myclass(namespace是test),然后在test.aspx中调用
<%@ Page language="c#" Codebehind="testcls.cs" AutoEventWireup="false" Inherits="testcls" %>
但是在定义类变量时(testcls tcls=new testcls();)却提示错误了。

因为初学ASP.NET,所以不是很明白。

搜索更多相关主题的帖子: aspx中 定义 testcls 变量 
2006-05-16 11:39
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 

我将test.aspx中的引用改成<%@ Page Language="C#" AutoEventWireup="false" CodeFile="testcls.cs" Inherits="myClass" %>却提示如下错误,这是什么原因啊?

Compilation Error

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: ASPNET: Make sure that the class defined in this code file matches the 'inherits' attribute, and that it extends the correct base class (e.g. Page or UserControl).

Source Error:

Line 1:  // testcls.cs
Line 2:  
Line 3:  using System;

Source File: f:\testcls.cs Line: 1

2006-05-16 13:30
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 
刚学不是很明白,能不能解释一下如何在aspx文件里调用cs文件里定义的类?谢谢
2006-05-16 16:32
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 

兄弟,你这个用的vs的环境吧,我用的是微软的ASP.NET WEB Matrix Project调试环境,这小冬冬不能建立工程,所以不能像你说的那样using 工程.类文件夹来引用,我现在有index.aspx,index.aspx.cs,testcls.cs三个文件,想在testcls.cs里定义一个多个aspx文件都能调用的类,我现在index.aspx.cs里用using TEST;(TEST是Namespace)引用就出错,这样的话该如何引用?

2006-05-16 17:33
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 

我将三个文件的内容简化出来给你看看,我这样引用就是不行,该怎么做?刚从ASP转到ASP.NET,搞得有点晕。

//index.aspx
<%@ Page Language="C#" autoeventwireup="false" codefile="index.aspx.cs" Inherits="_index" %>
<!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>
</head>
<body>
<form runat="server">
<asp:TextBox id="txt_str" runat="server" Text="test"></asp:TextBox>
</form>
</body>
</html>


//index.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using TEST;

public partial class _index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
 {
myClass myCls=new myClass();
txt_str.Text=myCls.startTime;
}
}


//testcls.cs
namespace TEST {

using System;
using System.Configuration;
using System.Xml;
using System.Data;
using System.Data.SqlClient;
using System.Web.UI;
using System.Collections;

/// <summary>
/// Summary description for myClass.
/// </summary>
public class myClass{
public string startTime;
public myClass() {
startTime = DateTime.Now.ToString();
}
}
}

2006-05-17 10:22
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 

我改用Visual Web Developer 2005 Express Edition环境了,新建一个ASP.NET WEB Site,自动生成了Default.aspx和Default.aspx.cs文件,但是访问defualt.aspx网页时,居然也出错。我快对学习ASP.NET失去兴趣了。


//default.aspx
<%@ Page Language="C#" AutoEventWireup="false" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server" Text></asp:TextBox>
</div>
</form>
</body>
</html>



//default.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("test");
}
}


Server Error in '/' Application.

Parser Error

Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.

Parser Error Message: Could not load type '_Default'.

Source Error:

Line 1:  <%@ Page Language="C#" AutoEventWireup="false"  CodeBehind="Default.aspx.cs" Inherits="_Default" %>
Line 2:  
Line 3:  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Source File: E:\aspnet\default.aspx Line: 1


Version Information: Microsoft .NET Framework Version:1.1.4322.2032; ASP.NET Version:1.1.4322.2032

2006-05-17 12:12
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 
基本解决了,是系统有两个.NET版本,重新注册一下就好了,在default.aspx.cs中调用testcls.cs的类没有问题了,但是感觉在default.aspx中并没有运行到default.aspx.cs中的代码,例如在default.aspx.cs的Page_Load函数中对Text控件进行赋值,但是浏览default.aspx网页时并没有成功,怎么回事?
2006-05-17 14:20
cityair
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-4-27
收藏
得分:0 

终于搞定了,不容易啊!继续学习。

2006-05-18 12:52
快速回复:[求助]在aspx中调用cs定义的类出错。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018179 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved