【发布时间】:2020-02-25 08:34:56
【问题描述】:
如果我有一个实体类
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里面的方法,但是贫血模型不允许有任何方法。
- 如果我对一个实体有多个 DTO(在不同的应用程序中)。如何重用一些方法?例如,
BarcodeSettingDTO和BarcodeSettingAnotherDTO(几乎类似于 BarcodeSettingDTO)。这是否意味着我应该为 DTO 创建IBarcodeSettingDTO,并使用IsBarcodeValid (IBarcodeSettingDTO dto, string barcode)。我在谷歌上搜索,有些人认为 DTO 不应该有任何接口。所以我真的很困惑。解决这个问题的正确方法是什么?
【问题讨论】:
标签: java c# methods interface dto