有没有一种简单的方法(也许使用代码合同?)来防止在应用程序的给定部分中使用某些 dll/命名空间/程序集?
我的用例是,当我尝试在控制器中使用公司范围的服务层时,我想要一个警告机制。
相反,我们应该在该服务层和我们的控制器之间有一个层(服务层正在发生变化,我们将为我们的新 SDK 一点一点地切换它)。
有哪些方法可以做到这一点?我可以简单地在代码合同中指定一些东西来警告在控制器方法中使用给定程序集吗?
有没有一种简单的方法(也许使用代码合同?)来防止在应用程序的给定部分中使用某些 dll/命名空间/程序集?
我的用例是,当我尝试在控制器中使用公司范围的服务层时,我想要一个警告机制。
相反,我们应该在该服务层和我们的控制器之间有一个层(服务层正在发生变化,我们将为我们的新 SDK 一点一点地切换它)。
有哪些方法可以做到这一点?我可以简单地在代码合同中指定一些东西来警告在控制器方法中使用给定程序集吗?
代码合同在这里不会真正有用。
您是否有权访问 Visual Studio Premium 或 Ultimate?内置了一个层图工具,可用于在构建时验证架构。
您创建一个新的建模项目并在其中添加一个层图。然后你可以将其他项目拖到图表中,你可以编辑它们之间的关系等等。这是一个非常直观的界面。
这是一篇博客文章,解释了如何打开编译时验证,以及有关填充图表的更多信息。
这是一个示例层图。例如,如果来自业务的代码访问了 Web 层内部的内容,则会生成错误。
(来源:msdn.com)