C# 能否实现像枚举一样自反射元数据属性的功能。
public class MyMeta
{
public string MetaName { get; set; }
public string Value { get; set; }
}
public class TestClass
{
public TestClass() { AColumn = new MyMeta(); }
public MyMeta AColumn { get; set; }
}
static class Program
{
static void Main(string[] args)
{
//这里要输出 "AColumn" 才行。 Enum 的枚举可能实现 Enum.One.ToString() 得到 "One" .
Console.WriteLine(( new TestClass()).AColumn.MetaName );
}
}
{
public string MetaName { get; set; }
public string Value { get; set; }
}
public class TestClass
{
public TestClass() { AColumn = new MyMeta(); }
public MyMeta AColumn { get; set; }
}
static class Program
{
static void Main(string[] args)
{
//这里要输出 "AColumn" 才行。 Enum 的枚举可能实现 Enum.One.ToString() 得到 "One" .
Console.WriteLine(( new TestClass()).AColumn.MetaName );
}
}
说白了: 怎么做一个类, 实现 枚举的功能 最重要的两个: ToString() 和到 Int 的转化 ???
2015.1.23:
.net 3.5后,可以使用 lambda 日 expression 表达式实现,Mvc的 HtmlHelper 就是这样实现的。
作者:NewSea 出处:http://newsea.cnblogs.com/
QQ,MSN:iamnewsea@hotmail.com 如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。 |