【发布时间】:2014-08-07 23:27:11
【问题描述】:
我正在尝试建立一个这样的类工厂:
public class Toyota() {};
public class Bmw() {};
public class Mercedes() {};
public class BrandFactory
{
private Dictionary<string, object> _Brands = new Dictionary<string, object> {
{"Toyota", Toyota},
{"Bmw", Bmw},
{"Mercedes", Mercedes}
}
public object GetBrand(string brandName)
{
return = BusinessManagers[brandName].Invoke;
}
}
这是一个想法,但它不起作用 - 我什至无法编译上面的代码,因为 Dictionary 无法将 'object' 与该函数相关联。我也试过Func<>,但在这种情况下,它需要以前的类型。
所以,这是我的问题: 这是实现这个“伪工厂”的正确方法吗?代码来自example code的示例
如果是这样,上面的代码中需要修复什么?
我之所以这么问是因为我需要基于从使用 Ajax 的客户端应用程序接收到的字符串创建一个新对象。喜欢:
AjaxCall -> String Containing Object Name -> Object Inoke -> Method Call -> Send result back to client
方法调用是所有Brand 实现的标准。
请问有人可以帮我吗?
谢谢。
【问题讨论】: