【问题标题】:Formatting address of different types不同类型的格式化地址
【发布时间】:2010-04-01 03:48:26
【问题描述】:

我有各种包含地址详细信息的类,即 AddressLine1、AddressLine2、AddressLine3、Suburb、Town 等。

在前端,我需要以特定方式格式化地址,即

AddressLine1<br />
AddressLine2<br />
Suburb State Postcode

如果 AddressLine2 不存在或为空,则不显示。很直接。我正在尝试确定显示此信息的最佳方式。目前,每个类的 Address 属性调用一个 FormatAddress 方法,该方法写出 html 字符串。这作为类的方法存在。我的观点是前端控件应该存在任何格式,即 ascx 等。但是,如果这些 DetailClasses 需要格式化相同的地址信息,那么最好的选择是什么,同时也更容易维护?

【问题讨论】:

    标签: c# asp.net street-address


    【解决方案1】:

    如果组成部分是公共属性,那么扩展方法呢?这不会污染类本身的地址抽象,但可以让您轻松、自然地访问功能和可读性。

    public static class AddressExtensions
    {
        public static string ToHtmlString(this IAddress address)
        {
            // return the formatted html from address
        }
    }
    

    【讨论】:

      【解决方案2】:

      这些格式化方法似乎是特定于一个类的,其中每个类都可以有自己的专门格式化。

      必须在类本身中处理格式是可以接受的。

      或者您可以在 UI 程序集中创建专门针对每个类的格式化类,其中可以标记格式化类,例如通过属性来标识它专门格式化的数据类的类型。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-06-10
        • 1970-01-01
        • 1970-01-01
        • 2011-04-21
        • 2018-02-04
        • 2016-09-30
        • 1970-01-01
        相关资源
        最近更新 更多