我已经看到很多关于将DTO映射到Domain Objects的问题,但我觉得他们没有回答我的问题.我之前使用过很多方法并有自己的看法,但我正在寻找一些更具体的东西.
情况:
我们有很多域对象.我们使用CSLA模型,因此我们的域对象可能非常复杂,并且包含自己的数据访问.你不想在线上传递这些.我们将编写一些新服务,以多种格式(.Net,JSON等)返回数据.出于这个(以及其他原因),我们还创建了一个精简的数据传输对象,以便在线路上传递.
我的问题是如何连接DTO和Domain对象?
我的第一反应是使用Fowler,DTO模式类型的解决方案.我已经多次看过这件事了,对我来说感觉很对.域对象不包含对DTO的引用.调用外部实体("映射器"或"汇编器")以从域对象创建DTO.通常在域对象端有一个ORM.这样做的缺点是"映射器"在任何真实情况下都会变得非常复杂,并且可能非常脆弱.
提出的另一个想法是域对象"包含"DTO,因为它只是一个精益数据对象.域对象属性将在内部引用DTO属性,如果需要,可以返回DTO.我可以看到没有问题,但感觉不对.我看过一些使用NHibernate的人似乎使用这种方法的文章.
还有其他方法吗?以上是值得使用的方式之一吗?如果是,如果没有,为什么?
感谢您提前了解任何信息.
我正在使用TeamCity运行MSBuild脚本,该脚本将清理并重建我们的解决方案之一。当我部署由该过程生成的dll时,Web服务器返回有关[MyType] .XmlSerializer.dll的错误,该错误是“此程序集由比当前加载的运行时新的运行时构建,无法加载。” 到目前为止,这是我的笔记:
据我所知,我的选择是:
我想念什么吗?我还有其他选择吗?
我正在寻找在用户当前时区以外的时区中在Web应用程序中显示时间的建议.
我们将日期/时间以UTC/GMT格式存储在数据库中,因此格式化UTC/GMT时间或用户当前时区不是问题.但是,在其他情况下,我们需要从任意时区的角度显示时间(即此页面上的每个日期/时间都在东部,无论用户是否在西海岸,中部,东部,等等.).
在过去,我们已经存储了偏移量或时区信息,然后在.Net中的服务器代码中进行了计算,或者我们已经在javascript中做了一些我希望避免的客户端操作,因为它们都变得非常依赖于javascript和用户的浏览器.我想知道在更客户端/ MVC类型的应用程序中执行此操作的最佳方法.
这是一个例子:
在上面的示例中,很容易获得UTC(#1)或用户当前时区(#2)的时间,但获得#3更加困难.我的选择似乎是:
还有其他选择吗?其他人如何处理类似情况?谢谢.
以前,Visual Studio具有用于移动Web表单的模板(而不是移动SDK).它们似乎在Visual Studio 2008中消失了,我见过的唯一解决方案是从Omar下载一些模板:
这是否受支持,如果是这样,支持的解决方案?