传递参数的最佳方式

时间:2013-10-11 12:25:31

标签: c# asp.net-mvc entity-framework

我有一个业务逻辑,我需要从我的存储库中获取数据,我将传递给我的存储库。这是我的功能

 public List<RiskLevelOfBreakdownItemsDto> GetRiskLevelOfBreakdownItems()
 {
        _RiskRegisterRepository = new RiskRegisterEntryRepository();
        List<int> ids = new List<int>();
        ids.Add(1); // 1 is for all open Risk
        ids.Add(2); // 2 is for all accepted Risk
        var riskLevel = _RiskRegisterRepository.GetRiskLevelOfBreakdownItems(ids);
        return riskLevel;
 }

我知道上面的代码违反了SOLID原则。 执行上述代码的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

你遇到的第一个问题是在get上创建一个新的存储库,它应该是一个“singleton”并且是“dependecy inject”或者是在构造函数或init方法上创建的。

代码的其余部分对我来说总是_RiskRegisterRepository.GetRiskLevelOfBreakdownItems(ids);是线程安全的