|
1
3
由于您在问题中使用了依赖注入标记,依赖注入框架通常会为您这样做。总是会涉及到反射,但大多数都有一个缓存机制,可以在下次请求对象时阻止任何反射。特别是当您的类型是具有默认构造函数的具体类型(如您在问题中所示)时,不需要注册。例如,当使用 Simple Service Locator ,请求如下:
当您不想使用依赖注入框架时,您可以做的是生成用于创建这些对象的委托,并将它们缓存到
|
|
|
2
4
有,但不是一个简单的解决办法。实际上,您可以创建一个动态方法,然后从中创建一个委托并使用它。
这是我在 Builder for ASP.NET BuilderFactory中的框架。 如果在代码中不清楚,您应该知道,一旦有了委托,则删除将存储在上面代码中名为builderConstructors的字典中。所以下次工厂只使用委托。 在这种特殊情况下,类的构造函数中需要两个参数。如果你使用默认的构造函数来构建你的类,事情会简单一些。 |
|
3
1
你可以用
|
|
|
JBryanB · 如何从基本抽象类访问类属性 3 年前 |
|
|
Gabe Tucker · 无法在golang中分配接口对象指针 4 年前 |
|
|
jkone27 · F#-在编译时从字符串生成简单的空类型 8 年前 |
|
|
John Bustos · C#通用工厂模式,不说明通用工厂模式的类型 8 年前 |
|
|
Randall Flagg · 访问propertyinfo中的属性 8 年前 |
|
|
Kacper · 在反映的全名和成员c后的“*”中,“+”是什么意思# 8 年前 |
|
|
tobeypeters · 反射铸造 8 年前 |
|
|
myst02 · 如何在另一个方法之后调用该方法? 8 年前 |