IoC への露出は最小限で、LinFu を使用しています。私が抱えている主な問題は、実行時までエラーが検出されないことです。私はコンパイル時のエラーを処理することを好みます。
たとえば、次のコードを使用してオブジェクトを作成するとします。
return ServiceContainer.GetService(typeof(IPurchaseOrder), tPO.IntPOId,
tPO.CustPONumber, custFac, tPO.FulfilledDate) as IPurchaseOrder;
このインターフェイスを実装するために作成したオブジェクトは次のとおりです。
[Implements(typeof(IPurchaseOrder), LifecycleType.OncePerRequest)]
public class PurchaseOrderImpl : IPurchaseOrder
{
public PurchaseOrderImpl(int intPOID, string customerPONumber, ICustomerFacility custFacility, DateTime? fulFilledDate )
{
IntPOID = intPOID;
CustomerPONumber = customerPONumber;
CustomerFacility = custFacility;
FulFilledDate = fulFilledDate;
}
..........
コンストラクターに別のパラメーターを追加したいとしましょう。
[Implements(typeof(IPurchaseOrder), LifecycleType.OncePerRequest)]
public class PurchaseOrderImpl : IPurchaseOrder
{
public PurchaseOrderImpl(int intPOID, string customerPONumber, ICustomerFacility custFacility, DateTime? fulFilledDate, double commision )
{
IntPOID = intPOID;
CustomerPONumber = customerPONumber;
CustomerFacility = custFacility;
FulFilledDate = fulFilledDate;
Commision = commission;
}
..........
その場合、コードは正常にコンパイルされますが、GetService を呼び出してオブジェクトをインスタンス化すると、実行時エラーが発生します。
ありがとう。
コンパイル時のエラーを受け取り、迅速かつ簡単に修正できるようにコードを変更するにはどうすればよいですか。