如例子所示,在数据库中存储的是枚举类型的名称而不是值,要如何对照呢?
首先需要进行类型转换,枚举类型提供了parse函数,用法如下:
//删除细目表
switch ((BaseTableEnum)Enum.Parse(typeof(BaseTableEnum), "entity.Biaohao"))
{
case BaseTableEnum.DC01:
DC01TableManager dc01 = new DC01TableManager();
ids = dc01.GetIds(DC01TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc01.BatchDelete(ids);
break;
case BaseTableEnum.DC02:
DC02TableManager dc02 = new DC02TableManager();
ids = dc02.GetIds(DC02TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc02.BatchDelete(ids);
break;
case BaseTableEnum.DC03:
DC03TableManager dc03 = new DC03TableManager();
ids = dc03.GetIds(DC03TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc03.BatchDelete(ids);
break;
case BaseTableEnum.DC04:
DC01TableManager dc04 = new DC01TableManager();
ids = dc04.GetIds(DC04TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc04.BatchDelete(ids);
break;
case BaseTableEnum.DC05:
DC01TableManager dc05 = new DC01TableManager();
ids = dc05.GetIds(DC05TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc05.BatchDelete(ids);
break;
case BaseTableEnum.DC06:
DC01TableManager dc06 = new DC01TableManager();
ids = dc06.GetIds(DC06TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc06.BatchDelete(ids);
break;
case BaseTableEnum.DC07:
DC07TableManager dc07 = new DC07TableManager();
ids = dc07.GetIds(DC07TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc07.BatchDelete(ids);
break;
case BaseTableEnum.DC11:
DC11TableManager dc11 = new DC11TableManager();
ids = dc11.GetIds(DC11TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc11.BatchDelete(ids);
break;
case BaseTableEnum.DC12:
DC12TableManager dc12 = new DC12TableManager();
ids = dc12.GetIds(DC12TableTable.FieldBiaobianhao, entity.Id);
returnValue = dc12.BatchDelete(ids);
break;
default:
break;
}