Как превратить ошибки времени выполнения LinFu в ошибки времени компиляции

Я имел минимальное воздействие 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 для создания экземпляра объекта, произойдет ошибка времени выполнения.

Благодарю.

Как я могу изменить свой код, чтобы получать ошибки времени компиляции, и я мог их быстро и легко исправить.

0 ответов

Другие вопросы по тегам