小编MIk*_*Ike的帖子

在using语句中使用条件逻辑是否可以

好的,所以我想说我需要处理订单.我们过去总是只有一种订单,订单.由于奇怪的情况,我们必须制作我们自己的注射器,并且目前正在使用它:

using(DependencyInjector.Inject()
    .ForType<Order>()
    .ImplementedBy<InsideOrderProcessor>())
{ ... };
Run Code Online (Sandbox Code Playgroud)

现在我们有了一个新的订单类型或订单,需要在处理方面有细微差别.但它仍然是Order类型,不能是其他任何东西.可以这样做:

using( isInsideOrder
    ? DependencyInjector.Inject()
        .ForType<Order>()
        .ImplementedyBy<InsideOrderProcessor>()
    : DependencyInjector.Inject()
        .ForType<Order>()
        .ImplementedBy<OutisdeOrderProcessor>()) 
{ ... };
Run Code Online (Sandbox Code Playgroud)

这甚至会起作用吗?如果是这样,可以吗?

.net c# dependency-injection

1
推荐指数
1
解决办法
1249
查看次数

标签 统计

.net ×1

c# ×1

dependency-injection ×1