[英]DDD Where to put image conversion
我有应用程序以二进制格式获取图像。 然后,该应用程序必须将此映像转换为特定的尺寸并将两种格式(原始格式和特定格式)都保存到磁盘。 在这种情况下,应用程序也必须在数据库中存储有关此图片的信息。
转换逻辑放在哪里:在应用程序层,领域层还是在基础架构层?
嗯-这个问题可能重复吗? 看一下,看看您的想法: 将对象(图像)转换为三层(3层)中的另一个对象(字节)
根据您的情况,《服务》似乎很合适: http : //dddcommunity.org/node/125
除非您的领域涉及转换图像,否则应将转换逻辑放入基础结构层。
像这样:
//domain
public class Image{
public Image(string fileName){
FileName=fileName;
}
public string FileName{get;private set;}
}
//infrastructure
public class ImageConvertor:ICanConvertImages{
public byte[] BmpToJpeg(byte[] img){
throw new NotImplementedException("haa haa");
}
}
//application
var bmpImg=PullBytesFromNowhere();
var jpegImg=convertor.BmpToJpeg(img);
var fileName=SaveToFile(jpegImg);
var image=new Image(fileName);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.