请教有关类的问题(50')

jsbywyh 2004-07-07 03:32:33


我写了一个“单位”的类,希望完成之后达到下述结果:
Unit myunit=new Unit(int unitID);
myunit.AccountBanks[i].AccountNOs[i];
//注释:AccountBanks---开户银行集合类
// AccountNOs----对应某一个开户行的帐号集合类
上述的实现中存在如下的问题:
1.myunit.AccountBanks[i],这一步实现正确。
2.但是再向下myunit.AccountBanks[i]后面的点不出现任何内容了。

关于AccountBanks的集合类的索引的实现方法如下:

public new UnitAccountBank this[int index]
{
get
{
return (UnitAccountBank)base[index];
}
set
{
base[index]=value;
}
}

上述的“UnitAccountBank”是自己定义的一个开户行的类,这个类里面包含了
相应的属性和方法。

请问各位这个是什么原因呢?
...全文
82 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
大雨仔 2004-07-07
  • 打赏
  • 举报
回复
晚上再答吧
jsbywyh 2004-07-07
  • 打赏
  • 举报
回复
好的,代码如下:

详细代码如下:
单位类:
using System;
using System.Collections;
using System.Data;
using JPMSoft.DataAccess;
using JPMSoft.SZProject ;

namespace JPMSoft
{
namespace SZProject
{
namespace InvestControl
{
/// <summary>
///J11
/// </summary>
public class Unit
{
#region 私有成员变量和属性
private UnitAccountBankList accountBanks=null;
public UnitAccountBankList AccountBanks
{
get
{
return accountBanks;
}
set
{
accountBanks=value;
}
}
//注释:其它属性略
#endregion

#region 构造函数
public Unit(int vunitID)
{
this.unitID=UnitID;
this.accountBanks=new UnitAccountBankList(vunitID);
//其它略
}
#endregion

}
}
}
}


开户银行集合类:

using System;
using System.Data;
using System.Collections ;

namespace JPMSoft
{
namespace SZProject
{
namespace InvestControl
{
/// <summary>
/// UnitAccountList 的摘要说明。
/// </summary>
public class UnitAccountBankList:ArrayList
{
#region 构造函数
public UnitAccountBankList()
{
//
// TODO: 在此处添加构造函数逻辑
//
}

public UnitAccountBankList(int vunitID)
{
this.unitID=vunitID;
DataSet ds=new DataSet();
int n=this.GetUnitAccountBanks(vunitID,ref ds);
if(n==1)
{
for(int i=0;i<ds.Tables[0].Rows.Count;i++)
{
string vaccountBank=ds.Tables[0].Rows[i]["nvcAccountBank"].ToString();
UnitAccountBank myUnitAccountBank=new UnitAccountBank(vunitID,vaccountBank);
this.AddItem(myUnitAccountBank);
}
}
}
private void AddItem(UnitAccountBank myUnitAccountBank)
{
base.Add(myUnitAccountBank);
}
#endregion

#region 索引器
public new UnitAccountBank this[int index]
{
get
{
return (UnitAccountBank)base[index];

}
set
{
base[index]=value;
}
}
#endregion
}
}
}
}


开户银行类:
using System;
using System.Data;

namespace JPMSoft
{
namespace SZProject
{
namespace InvestControl
{
/// <summary>
/// UnitAccountBank 的摘要说明。
/// 单位帐户银行类
/// </summary>
public class UnitAccountBank
{
#region 构造函数
public UnitAccountBank()
{
//
// TODO: 在此处添加构造函数逻辑
//
}

public UnitAccountBank(int vunitID,string vaccountBank)
{
int n=this.GetInfo();
if(n>=0)
{
this.unitID=0;
this.accountBank=null;
this.accountNOs=null;
}
else
{
this.unitID=int.Parse(ds.Tables[0].Rows[0]["intUnitID"].ToString());
this.accountBank=ds.Tables[0].Rows[0]["nvcAccountBank"].ToString();
this.accountNOs=new UnitAccountNOList(this.unitID,this.accountBank);
}
}
#endregion
#region 私有变量和属性
// 单位编号
private int unitID;
public int UnitID
{
get
{
return unitID;
}
set
{
unitID=value;
}
}

// 开户银行
private string accountBank;
public string AccountBank
{
get
{
return accountBank;
}
set
{
accountBank=value;
}
}

// 开户行号
private UnitAccountNOList accountNOs;
public UnitAccountNOList AccountNOs
{
get
{
return accountNOs;
}
set
{
accountNOs=value;
}
}
#endregion
}
}
}
}
上述代码中不相关的部分已经略去

另外,还有UnitAccountNOList和UnitAccountNO类,这里就不再累述,现在关键的问题是
1.myunit.AccountBanks[i],这一步实现正确。
2.但是再向下myunit.AccountBanks[i]后面的点不出现任何内容了。
viena 2004-07-07
  • 打赏
  • 举报
回复
看不明白
xuguchu 2004-07-07
  • 打赏
  • 举报
回复
能不能所你的
AccountBanks
AccountNOs
UnitAccountBank
unit
貼上來看看,你這樣說人家不明白的哦

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧