如果我有实体类,则>
public class BarcodeSetting { string Prefix {get;set;} string RangeStart {get;set;} string RangeEnd {get;set;} }
和DTO
public class BarcodeSettingDTO { string Prefix {get;set;} string RangeStart {get;set;} string RangeEnd {get;set;} }
我的问题是我应该在客户端(winform)中使用
BarcodeSettingDTO
吗?或创建另一个类,例如BarcodeSettingViewModel
如果我想使用方法IsBarcodeValid
public bool IsBarcodeValid(BarcodeSettingDTO dto, string barcode) { // return true if barocode is in BarcodeSettingDTO range // return false }
我应该将其放置在哪里(作为静态助手方法,或将其放置在
BarcodeSettingDTO
中)?我以前认为IsBarcodeValid
应该是BarcodeSetting
内部的方法,但贫血模型不允许有任何方法。
BarcodeSettingDTO
和BarcodeSettingAnotherDTO
(几乎类似于BarcodeSettingDTO)。这是否意味着我应该为DTO创建IBarcodeSettingDTO
,并使用IsBarcodeValid (IBarcodeSettingDTO dto, string barcode)
。我在Google上搜索过,有些人认为DTO不应该有任何界面。所以我真的很困惑。解决此问题的正确方法是什么?[如果我有实体类,则公共类BarcodeSetting {字符串前缀{get; set;}字符串RangeStart {get; set;}字符串RangeEnd {get; set;}}和DTO公共类BarcodeSettingDTO {...
Dto仅用于在各层之间传输数据,因此,在引用验证或业务逻辑时专门添加一些行为是没有责任的。尝试将验证和业务规则集中到业务规则验证器类或丰富的Entity类中。