我已经查看了很多示例c#泛型代码,并记得看到一个语法声明技巧,为长泛型字典类型创建了另一种简写类型.混合C#和C++就像这样:
typedef MyIndex as Dictionary< MyKey, MyClass>;
Run Code Online (Sandbox Code Playgroud)
然后允许以下用法:
class Foo
{
MyIndex _classCache = new MyIndex();
}
Run Code Online (Sandbox Code Playgroud)
有人能提醒我哪个C#lanaguage功能支持这个吗?
我知道委托提供的高性能反射可能比常规的显式 c# 代码慢 15%。但是,我可以在 stackoverflow 上找到的所有示例都基于对通过委托访问的方法/属性类型的先验知识。
鉴于类的这种先验知识,为什么首先要诉诸反射的委托访问?
无论如何,我面临的反射编码任务是如何为未知的类属性列表实现高性能属性获取/设置访问,其中在运行时只提供类类型名称?我可以编写反射检查的基础代码来生成属性列表,但是如何为一组潜在的随机属性类型连接一组基于委托的访问器?
假设属性类型仅限于一系列基本的 DB 列类型,则返回一个 case 语句的答案是:
Func<int> or Func<string> etc?
Run Code Online (Sandbox Code Playgroud)
编辑 1:我仅限于 .Net 3.5