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中的这个频率出现最高的中文显示问题了,查了资料发 ...
随机推荐
- 【转】Python实现修改Windows CMD命令行输出颜色(完全解析)
用Python写命令行程序的时候,单一的输出颜色太单调.其实我们可以加些色彩,比如用红色表示警告,绿色表示结果正常等.网上也有几篇类似的帖子,但是没有把问题讲清楚,贴的代码也不是太清晰.这里,对Win ...
- 演示 Calendar 的一般操作
package com.yixin.webbrower; /* * 演示 Calendar 的一般操作 */ import java.util.Date; import java.text.Simpl ...
- Winform常用的一些功能收集(持续更新)
#region progressBar实时显示进度 private void button1_Click(object sender, EventArgs e) { int i = 10000; pr ...
- Echarts数据可视化series-line线图,开发全解+完美注释
全栈工程师开发手册 (作者:栾鹏) Echarts数据可视化开发代码注释全解 Echarts数据可视化开发参数配置全解 6大公共组件详解(点击进入): title详解. tooltip详解.toolb ...
- jquery各种事件使用方法总结(from:天宇之游)
ps:本博客转自博主 天宇之游 ,地址:http://www.cnblogs.com/cwp-bg/ ,再次感谢天宇之游.jquery事件使用方法总结 一.鼠标事件1. click():鼠标单击事 ...
- 敏捷开发(2)-Scrum
什么是SCRUM Scrum的英文意思是橄榄球运动的一个专业术语,表示“争球”的动作:把一个开发流程的名字取名为Scrum,我想你一定能想象出你的开发团队在开发一个项目时,大家像打橄榄球一样迅速.富有 ...
- UVa10129,Play On Words
给出n个单词,如果一个单词的尾和另一个单词的头字符相等,那么可以相连,问这n个单词是否可以排成一列.欧拉路应用,构图:一个单词的头尾字母分别作为顶点,每输入一个word,该word的头指向word的尾 ...
- A low-cost wear-leveling algorithm for block-mappingsolid-state disks
[] Li-Pin Chang,Li-Chun Huang.A low-cost wear-leveling algorithm for block-mapping solid-state disks ...
- ClassLoader 工作机制
ClassLoader 采用上级委托接待机制加载 class JVM 平台提供三层 ClassLoader 1.Bootstrap ClassLoader:主要加载 JVM 自身工作需要的类 2.Ex ...
- 如何把项目上传到GitHub上
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px Consolas; color: #a5b2b9 } span.Apple-tab-span ...