Asp.net mvc 4 n层数据检索的区域参数

Asp.net mvc 4 n层数据检索的区域参数,asp.net-mvc-4,n-tier-architecture,sharp-architecture,web-architecture,Asp.net Mvc 4,N Tier Architecture,Sharp Architecture,Web Architecture,我想知道在我的web应用程序层中,用户区域设置的最佳位置是什么,以格式化数据库结果查询的日期列输出 我可以从HttpContext.Request获取区域设置,并将其作为字符串传递给业务层,然后在业务对象层中使用System.Globalization创建DateTimeFormatInfo对象 即。 DateTimeFormatInfo dtfi=CultureInfo.CreateSpecificCulture(cultureString).DateTimeFormat 业务层从数据访问层获

我想知道在我的web应用程序层中,用户区域设置的最佳位置是什么,以格式化数据库结果查询的日期列输出

我可以从HttpContext.Request获取区域设置,并将其作为字符串传递给业务层,然后在业务对象层中使用System.Globalization创建DateTimeFormatInfo对象

即。 DateTimeFormatInfo dtfi=CultureInfo.CreateSpecificCulture(cultureString).DateTimeFormat

业务层从数据访问层获取数据,使用LINQ查询选择器,可以使用上面的dtfi对象格式化日期列

但是,我想知道我是否真的应该向业务层传递一个带有语言区域性的字符串,而应该使用从业务层返回的数据加载另一个匿名类型,并在控制器中添加日期格式


这将避免WPF应用程序将执行区域的区域性信息传递给业务层中的同一个调用的情况。

就我个人而言,我更喜欢尽快处理所有区域性内容以进行输入,并尽可能晚地进行输出,这意味着在UI和控制器代码中。业务层应该只关注常规DateTime对象


文化代码是混乱的代码,将混乱的代码保存在一个地方是很有帮助的,不要让它渗透到代码的多个层次。

是的,我同意,只是所有的控制器操作方法都很简短,我必须加载一个新的匿名类型来对从BizObject返回的数据进行日期格式化。是的,我不会将其添加到业务层,只是业务层返回一个匿名类型,我需要访问此对象,找到行集合,然后找到日期行,然后格式化它们。