0
如何更改此代码以使工厂动态。我相信我很接近远程处理。我不想对工厂进行任何硬编码,也不想重新编译。数据库驱动它。VB.NET动态工厂
Dim genericRule As Rule
Dim factoryObject As String
factoryObject = _dal.GetFactoryObject(ruleId)
'Close, but not quite will keep working on it.
'Dynamic object creation using remoting to the local computer.
'Dim mArgs(1) As Object
'mArgs(0) = ruleid
'mArgs(1) = pronumber
'Dim mObj As Object
'Try
' mObj = Activator.CreateInstance(Nothing, "DedicatedBilling.RuleFactory." + mFactoryObject, mArgs)
' mRule = CType(mObj, Rule)
'Catch ex As Exception
' mObj = Activator.CreateInstance(Nothing, "DedicatedBilling.RuleFactory.ErrorRule", mArgs)
' mRule = CType(mObj, Rule)
'End Try
Select Case factoryObject
Case "DeadHeadEntryRule"
genericRule = New DeadHeadEntryRule(ruleId, proNumber)
Case "DeadHeadFuelRateRule"
genericRule = New DeadHeadFuelRateRule(ruleId, proNumber)
Case "DeliveryStatusRule"
genericRule = New DeliveryStatusRule(ruleId, proNumber)
Case Else
genericRule = New ErrorRule(ruleId, proNumber)
End Select
谢谢你的问题指针。我删除了无关的代码。我相信我尝试过这一点,并且无法弄清楚如何处理新事物没有超载并需要两个参数的事实,但那是几个月前的事实。 – 2011-02-12 22:09:12