读书人

关于反射的有关问题哪位大哥帮忙上!

发布时间: 2012-08-08 14:32:45 作者: rapoo

关于反射的问题,哪位大哥帮忙下!!!
国际惯例,先贴出代码!!!

C# code
ERMS.Package.MetadataID.M1ERMS.Package.MetadataID.M2ERMS.Package.MetadataID.M3ERMS.Package.MetadataID.M4ERMS.Package.MetadataID.M5....//从M1一直到M88ERMS.Package.MetadataID.M88

这个是一个DLL里面的一个类属性。。

现在问题来了。。我有一堆string Mx的变量,,,它们的数值都是等于(M1,M5,M9,M22,M46...)等等,现在我想通过这些变量的数值调用对应的ERMS.Package.MetadataID.M?? ,,,,请问一定要用如下的办法吗??
C# code
if(Mx=="M1")ERMS.Package.MetadataID.M1;if(Mx=="M2")ERMS.Package.MetadataID.M2;if(Mx=="M3")ERMS.Package.MetadataID.M3;if(Mx=="M4")ERMS.Package.MetadataID.M4;...//88次

能不能用个循环??听说有个“反射”的方法,但看了相关的资料,也不是很懂。怎么用?

[解决办法]
Quote=引用:]
是enum,如下:
namespace ERMS.Package
{
public enum MetadataID
{
...
....


引用:

你看看MetadataID的定义是什么?class还是enum?
[/Quote]

那我想你的意思应该是这样:
C# code
string Mx = "M15";ERMS.Package.MetadataID metadataID = (ERMS.Package.MetadataID)Enum.Parse(typeof(ERMS.Package.MetadataID), Mx);entity.Content.Add(metadataID, "001"); 

读书人网 >C#

热点推荐