![]() |
1
1
我相信您的验证应该存在于您的域模型中。字段上的约束直接表示一些业务逻辑。最终,您必须在坚持之前进行验证。 |
![]() |
2
0
我认为这取决于许多因素(以及一些个人偏好)。有时约束应该构成域对象的一部分-例如社会保险号/护照号…-它们通常具有固定的长度,不能作为域规则而改变——而不是数据持久性规则(尽管您也可以约束DB)。 有些人更喜欢在他们的域模型中不进行这些类型的检查,而是在属性上具有类似于验证属性的内容,该属性可以由单独的验证器在域对象外部进行检查和执行。 您的方法可能存在的问题(尽管不难解决)是让任何ORM/Mapper(如果您正在使用ORM/Mapper)知道如何将字符串映射到/从DB映射到约束字符串。 ConstrainedString可能无法解决域对象具有有关约束的额外信息的问题,因为它可能需要构造ConstrainedString。 |
![]() |
3
0
如果你改变了一个案例的约束条件,你就有必要做一个新的——你已经改变了合同,旧的代码将不再知道它是否符合要求。 不要担心存储库将允许或不允许的内容,而是定义 你 将允许在类中使用,并确保找到一种方法来使用将来更改为的任何存储库。您拥有自己的API—您的依赖项没有。 |
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
![]() |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
|
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
![]() |
i_sniff_ket · 在unity之外使用unity类 2 年前 |