c# asp.net 多数组索引的解决方法
本人今天做了一个功能 需要在一个类里用多个数组,
数组需要索引器来调用 一个数组
我查了msdn 一个类里面只能有一个this 索引器
那这么多数组如何构造索引呢
我在坛子里找到了解决之道
view plaincopy to clipboardprint?
using System;
namespace TestUse
{
/// <summary>
/// Summary description for Muliti.
/// </summary>
public class Muliti
{
public Muliti()
{
//
// TODO: Add constructor logic here
//
}
private string[] test1;
private object[] test2;
private int[] test3;
public object this[string arrname,int index]{
get{
switch(arrname){
case "test1":return test1[index];
case "test2":return test2[index];
case "test3":return test3[index];
default:return null;
}
}
set{
switch(arrname)
{
case "test1":test1[index]=value.ToString();break;
case "test2":test2[index]=value;break;
case "test3":test3[index]=(int)value;break;
default:break;
}
}
}
public void setUpArray(){
test1 = new string[3];
test2 = new object[2];
test3 = new int[4];
}
}
}
using System;
namespace TestUse
{
/// <summary>
/// Summary description for Muliti.
/// </summary>
public class Muliti
{
public Muliti()
{
//
// TODO: Add constructor logic here
//
}
private string[] test1;
private object[] test2;
private int[] test3;
public object this[string arrname,int index]{
get{
switch(arrname){
case "test1":return test1[index];
case "test2":return test2[index];
case "test3":return test3[index];
default:return null;
}
}
set{
switch(arrname)
{
case "test1":test1[index]=value.ToString();break;
case "test2":test2[index]=value;break;
case "test3":test3[index]=(int)value;break;
default:break;
}
}
}
public void setUpArray(){
test1 = new string[3];
test2 = new object[2];
test3 = new int[4];
}
}
}
view plaincopy to clipboardprint?
private void button1_Click(object sender, System.EventArgs e)
{
Muliti testm = new Muliti();
testm.setUpArray();
testm["test1",0]="test1-0";
testm["test2",0]= "test2-0";
testm["test3",0]= 3;
MessageBox.Show((string)testm["test1",0]);
MessageBox.Show((string)testm["test2",0]);
MessageBox.Show("" + testm["test3",0]);
}
private void button1_Click(object sender, System.EventArgs e)
{
Muliti testm = new Muliti();
testm.setUpArray();
testm["test1",0]="test1-0";
testm["test2",0]= "test2-0";
testm["test3",0]= 3;
MessageBox.Show((string)testm["test1",0]);
MessageBox.Show((string)testm["test2",0]);
MessageBox.Show("" + testm["test3",0]);
}
这样 加个判断就行了 有时候头脑还真的迷糊 想了半天还是没想起来。
c# asp.net 多数组索引的解决方法的更多相关文章
- 经历:asp.net oracle 部署问题以及解决方法
原文:[原创]经历:asp.net oracle 部署问题以及解决方法 精简的美丽...... 一.环境 开发环境 win7 64bit Vs2010 ...
- Asp.net导出Excel乱码的解决方法
通过跟踪Asp.net服务器代码,没有乱码,然而导出Excel到浏览器后,打开时出现乱码. 解决方法是添加编码格式的前缀字节码:Response.BinaryWrite(System.Text.Enc ...
- Windows Server 2003下ASP.NET无法识别IE11的解决方法
由于IE11对User-Agent字符串进行了比较大的改动,所以导致很多通过User-Agent来识别浏览器的程序,都相应的出现了无法识别IE11的情况.(普通用户端则可以通过这个方法来进行设置.) ...
- Windows Server 2003下ASP.NET无法识别IE11的解决方法【转】
http://www.iefans.net/windows-server-2003-asp-net-ie11-shibie/ 由于IE11对User-Agent字符串进行了比较大的改动,所以导致很多通 ...
- [原创]经历:asp.net oracle 部署问题以及解决方法
精简的美丽...... 一.环境 开发环境 win7 64bit Vs2010 Oracle 11g r2 64bit <inst ...
- Asp.net MVC Razor常见问题及解决方法
没有经验的童鞋就是这样磕磕碰碰出来的经验. 1,Datatype的错误提示消息无法自定义 这也许是Asp.net MVC的一个Bug.ViewModel中定义了DataType为Date字段: [Re ...
- Asp.net MVC Razor常见问题及解决方法(转载>云中客)
没有经验的童鞋就是这样磕磕碰碰出来的经验. 1,Datatype的错误提示消息无法自定义 这也许是Asp.net MVC的一个Bug.ViewModel中定义了DataType为Date字段: 1 2 ...
- ueditor 1.4.3 gbk asp 上传中文乱码 终极解决方法 ie6 ie8 也适用
[摘要:百度编纂器1.43 gbk asp 题目 1.firefox3.0下 单图上传 面没有了 面多图上传 中央的蓝色按钮(即 面击挑选图片)没有表现(附件上传出那个题目) 没有晓得我的水狐吃翔了 ...
- ASP+中文显示之两种解决方法
作者刚開始写ASP+程序时候碰到的第一个比較大的问题就是中文显示问题,执行后发现ASP+从数据库中读 取出来的中文所有变成了?????,有点相似jsp中的这个频率出现最高的中文显示问题了,查了资料发 ...
随机推荐
- PE文件格式详解,第二讲,NT头文件格式,以及文件头格式
PE文件格式详解,第二讲,NT头文件格式,以及文件头格式 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) PS:本篇博客 ...
- webpack 的使用1
进入指定文件夹 npm init 安装 npm install webapck --save-dev 根目录下新建hello.js 将文件打包到指定文件 Asset :打包成的文件名称 Chunk ...
- Scala基础之注解(annotation
在学习Scala的过程中,总会碰到一些注解: // Predef.scala @inline def implicitly[T](implicit e: T) = e @deprecated(&quo ...
- 使用BigQuery分析GitHub上的C#代码
一年多以前,Google 在GitHub中提供了BigQuery用于查询的GitHub上的开源代码(open source code on GitHub available for querying) ...
- 数据库中有的字段为null时,反馈到页面上是什么也不显示?如何用一个【无】字来代替呢?
<asp:ListView ID="listViewCustomer" DataSourceID="ods_Customer" runat="s ...
- UVa1599,Ideal Path
说实话,这题参考的: http://blog.csdn.net/u013382399/article/details/38227917 倒着BFS就把我难住了T T,原来这样倒着BFS一遍,遍历完 ...
- 自学 Python 3 最好的 入门 书籍 推荐(附 免费 在线阅读 下载链接)
请大家根据自己的实际情况对号入座,挑选适合自己的 Python 入门书籍: 完全没有任何编程基础:01 号书 少量编程基础,不求全,只希望能以最快的速度入门:02 号书 少量编程基础,有一定的英文阅读 ...
- go基础编程 day-2
Go的常亮 关键字: Const Go常亮的多个定义: // 定义常亮的关键字 const // 定义多个常亮 const( PI = 3.14 const1 = " const2 = co ...
- Ubuntu/deppin 系统安装Nginx
Ubuntu/deppin 系统安装Nginx 添加密钥 打开Nginx官网 ,并找到如下位置: 在桌面新建"nginx_signing.key"文件,文件内容为请点击图1中的标注 ...
- MongoDB监控
1. mongostat:间隔固定时间获取mongodb的当前运行状态,并输出. 使用示例: D:\Program_Files\MongoDB\bin\mongostat(根据MongoDB的安装目录 ...