我有一个asp.net mvc应用程序,我有一个页面用于提供meteo信息。它看起来像:
今天的温度是34-35度
对于此
34-35度
,我有一种方法可以确保文本格式为
[号码] [点] [号码]
调用AssureCorrectDegressFormat()。 现在我问的是哪个最适合。直到现在我从视图中调用它,像这样:
但是我认为视图仅用于显示数据,而不是调用某些方法来操作这个文字。我将我的类SafeData移动到我的应用程序的核心,然后我将调用此方法的DTO传递给视图并获取正确的数据进行显示。我对你的意见感兴趣,这个课程的最佳位置在哪里,也许在基础设施层,以及在哪里调用它,现在我从我的服务中调用它。我忘了说我正在使用DDD aproach。
答案 0 :(得分:4)
从我的角度来看,格式化是一个与视图相关的函数,因此应该在视图中调用它。至于实际执行格式化的代码,我可能会创建一个HtmlHelper扩展来处理格式。这样我可以在任何我想要的地方使用它,但只在一个地方使用代码。
<%= Html.ShowDegrees( DV.TheDegreeString ) %>
答案 1 :(得分:1)
在View中格式化数据显示对我来说似乎很好。关于将它放在你的视图上,你不会三思而后行:
<%= Model.MyDate.ToString("f") %>
你会吗?校长是一样的。
答案 2 :(得分:0)
如果这是一个非常简单的格式或计算,我只是把它放在视图中。如果它比那更复杂,我会在ViewModel中放一个方法。如果它很复杂并且可以在很多地方使用,我将为它创建一个HtmlHelper。