c# - 避免库与自定义属性的相互依赖
问题描述
我想减少我们项目中一些库的相互依赖关系。我想知道定义在新框架的几个库中使用的自定义属性的最佳位置在哪里。
一种可能性是拥有一些包含所有属性的“DataAnnotations”库。但是,这会以某种方式违反关注点分离原则。此外,许多框架库必须引用该库。另一种可能性是将属性放入序列化和 UndoRedoManager 库中。然而,这意味着框架库必须直接引用它们,因此用户别无选择,只能将它们包含在他的程序中。
需要共享属性的两个具体示例是 undo-redo-manager 和序列化程序。只要库的用户单独定义数据结构,他就可以决定是否要添加序列化器以及必要的属性。但是,在某些情况下,框架中定义了基本的数据结构,这也需要属性。
解决方案
推荐阅读
- oracle - 我们可以在 HPQC/ALM 查询生成器中编写 for 循环吗
- python - 允许多个可变参数列表?
- elasticsearch - elasticsearch:bootstrap.system_call_filter 设置在哪里?
- excel - 使用间接函数的 Excel 单元格交错
- java - 如何在 Java 中返回结果集
- python - 烧瓶模型未正确导入
- javascript - 如何以异步/等待风格制作回调函数?
- python - 使用填充堆叠不同长度的 Numpy 数组
- r - 使用过滤器将NA值替换为按组的平均值
- docker - 在同一网络中的其他主机中使用 docker 映像