本人今天做了一个功能 需要在一个类里用多个数组,

数组需要索引器来调用  一个数组

我查了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 多数组索引的解决方法的更多相关文章

  1. 经历:asp.net oracle 部署问题以及解决方法

    原文:[原创]经历:asp.net oracle 部署问题以及解决方法 精简的美丽...... 一.环境    开发环境        win7 64bit         Vs2010       ...

  2. Asp.net导出Excel乱码的解决方法

    通过跟踪Asp.net服务器代码,没有乱码,然而导出Excel到浏览器后,打开时出现乱码. 解决方法是添加编码格式的前缀字节码:Response.BinaryWrite(System.Text.Enc ...

  3. Windows Server 2003下ASP.NET无法识别IE11的解决方法

    由于IE11对User-Agent字符串进行了比较大的改动,所以导致很多通过User-Agent来识别浏览器的程序,都相应的出现了无法识别IE11的情况.(普通用户端则可以通过这个方法来进行设置.) ...

  4. Windows Server 2003下ASP.NET无法识别IE11的解决方法【转】

    http://www.iefans.net/windows-server-2003-asp-net-ie11-shibie/ 由于IE11对User-Agent字符串进行了比较大的改动,所以导致很多通 ...

  5. [原创]经历:asp.net oracle 部署问题以及解决方法

    精简的美丽...... 一.环境    开发环境        win7 64bit         Vs2010        Oracle 11g r2 64bit        <inst ...

  6. Asp.net MVC Razor常见问题及解决方法

    没有经验的童鞋就是这样磕磕碰碰出来的经验. 1,Datatype的错误提示消息无法自定义 这也许是Asp.net MVC的一个Bug.ViewModel中定义了DataType为Date字段: [Re ...

  7. Asp.net MVC Razor常见问题及解决方法(转载>云中客)

    没有经验的童鞋就是这样磕磕碰碰出来的经验. 1,Datatype的错误提示消息无法自定义 这也许是Asp.net MVC的一个Bug.ViewModel中定义了DataType为Date字段: 1 2 ...

  8. ueditor 1.4.3 gbk asp 上传中文乱码 终极解决方法 ie6 ie8 也适用

    [摘要:百度编纂器1.43 gbk asp 题目 1.firefox3.0下 单图上传 面没有了 面多图上传 中央的蓝色按钮(即 面击挑选图片)没有表现(附件上传出那个题目) 没有晓得我的水狐吃翔了 ...

  9. ASP+中文显示之两种解决方法

    作者刚開始写ASP+程序时候碰到的第一个比較大的问题就是中文显示问题,执行后发现ASP+从数据库中读  取出来的中文所有变成了?????,有点相似jsp中的这个频率出现最高的中文显示问题了,查了资料发 ...

随机推荐

  1. ubuntu mount u盘以及cp拷贝文件夹

    如果是ubuntu桌面环境的话,不用mount,接入的U盘就可以直接被系统识别,访问起来非常方便,但如果没有桌面环境呢,比如在ubuntu server端,如何访问U盘呢? 第一步:查看U盘信息sud ...

  2. c# 图片转二进制/字符串 二进制/字符串反转成图片

    protected void Button1_Click(object sender, EventArgs e) { //图片转二进制 byte[] imageByte = GetPictureDat ...

  3. redis的发布订阅模式pubsub

    前言 redis支持发布订阅模式,在这个实现中,发送者(发送信息的客户端)不是将信息直接发送给特定的接收者(接收信息的客户端),而是将信息发送给频道(channel),然后由频道将信息转发给所有对这个 ...

  4. mySQL、mariaDB、noSQL、SQL server、redis之间是什么关系?

    1.首先,从数据库类型上分类,mySQL.mariaDB.SQL server这3种属于关系型数据库. noSQL属于非关系型数据库,被视为数据库革命者. redis成为内存缓存数据库,而前面的两种类 ...

  5. 从实践的角度理解cookie的几个属性

    cookie的处理流程大致分为以下几步: 1.浏览器初次请求服务器. 2.服务器认为有必要设置cookie,通过响应报文首部:Set-Cookie告知浏览器,cookie的内容. 3.浏览器本地保存( ...

  6. scala中的Type使用

    trait Base { val name: String } case class S( name: String, age: Int ) extends Base case class F( na ...

  7. This application failed to start because it could not find or load the Qt platform plugin "windows" 的问题原因以及解决方案

    1. 问题原因非常简单,经过各种百度,都没有找到解决方案,在此做一个记录备用. 2.原因就在于,项目目录使用了中文路径,然后出现了这个问题. 3.我是在使用 syncfusion 下的HTML 转PD ...

  8. Java策略模式以及来自lambda的优化

    前言    设计模式是软件工程中一些问题的统一解决方案的模型,它的出现是为了解决一些普遍存在的,却不能被语言特性直接解决的问题,随着软件工程的发展,设计模式也会不断的进行更新,本文介绍的是经典设计模式 ...

  9. Nhibernate/Hibernate 使用多参数存儲過程 出現could not execute query,Could not locate named parameter等錯誤解決

    <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns=" ...

  10. pylot网站压力测试

    windows下使用python进行网站压力测试,有两个必不可少的程序需要安装,一个是python,另一个是pylot.python是一个 安装软 件,用来运行python程序,而pylot则是pyt ...