小编use*_*363的帖子

如何跨程序集使用Ninject

我可以看到之前已经问过类似的问题,但对DI和.Net来说是全新的我无法掌握整个解决方案或者可能找不到合适的来源....

  • 我有程序集WebAPI,BL,DL.
  • WebAPI依赖于BL,
  • BL依赖于DL,
  • WebAPI没有引用DL,我想保持相同.还有更多的装配,但这足以说明问题.

WebAPI具有应用程序启动部分,因此我可以使用它来初始化Ninject内核并为WebAPI项目注册依赖项.

如何为BL和其他组件实现相同的目标?

c# ninject

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

何时引发异常或返回 null?

我在数据访问层有一些功能

public Order RetrieveById(int id)
public List<Order> RetrieveByStatus(OrderStatus status)
Run Code Online (Sandbox Code Playgroud)

现在我对异常引发有点困惑。

对于 RetrieveById 函数,小于 1 的 id 是无效 id,因此我想引发异常。我想为数据库中不存在的 Id 返回 null。然后感觉我太复杂了。

对于 RetrieveByStatus,当数据库中没有该状态的数据时,我想返回一个空列表。

但是我看到有些人在 RetrieveById 无法返回任何内容时引发异常,但 RetrieveByStatus 在没有记录时不应引发异常,或者应该吗?

有人可以帮我澄清这些概念吗?

c# exception

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

如何使用Automapper映射父/子集合模型?

我编写了一个简单的父子方案,无法使用Automapper进行映射.在下面的场景中,我希望OrderItems列表映射到dtoOrderItems列表,但它不会自动发生.我是否需要使用for循环或其他手动编写它?

public class Order
{
    public int OrderNumber {get; set;}
    public List<OrderItem> OrderItems { get; set; }

    public Order()
    {
        OrderItems = new List<OrderItem>();
        OrderItems.Add(new OrderItem() {Quantity= 10});
    }
}

public class OrderItem
{
    public int Quantity {get; set;}
}

public class DTOOrder
{
    public int DTOOrderNumber { get; set; }
    public List<DTOOrderItem> DTOOrderItems { get; set; }

    public DTOOrder()
    {
        DTOOrderItems = new List<DTOOrderItem>();           
    }
}

public class DTOOrderItem
{
    public int DTOQuantity { get; set; }
}


public …
Run Code Online (Sandbox Code Playgroud)

c# automapper

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

标签 统计

c# ×3

automapper ×1

exception ×1

ninject ×1