需要格式化字符串

时间:2014-06-06 04:58:08

标签: c# asp.net-mvc string

我必须使用单个字符串将我的应用程序的地址格式化为如下格式。

1421 COUNTRY CLUB RD    
PO BOX 953  
CAMDEN  
USA

但是我的表中每个字段都有不同的列。

enter image description here

我必须将它们格式化为单个字符串并显示如下..

Address1
Address2
Address3
City
ZIPCode
County
State
Country

到目前为止,我所做的是将其格式化为模型中的字符串

 public string DisplayShippingAddress
        {
            get { return string.Format("{0} {1} {2} {3} {4} {5} {6} {7}", this.Address1, this.Address2, this.Address3,this.City,this.ZIPCode, this.County,this.State,this.Country); }
        }

但我得到一个单行字符串。我需要像上面那样格式化

4 个答案:

答案 0 :(得分:2)

要跨行分割字符串,只需使用换行符:' \ n'

get { return string.Format("{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}", this.Address1, this.Address2, this.Address3,this.City,this.ZIPCode, this.County,this.State,this.Country); }

默认情况下,大多数控件都不是多线,因此请务必在输出的任何内容中将其打开。

答案 1 :(得分:2)

由于每个值一行,我会这样做:

public string DisplayShippingAddress
{
    get
    {
        return String.Join(Environment.NewLine, new []
        {
            this.Address1, this.Address2, this.Address3,
            this.City, this.ZIPCode, this.County,
            this.State, this.Country
        });
    }
}

答案 2 :(得分:1)

public string DisplayShippingAddress
    {
        get { return string.Format("{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}", this.Address1, this.Address2, this.Address3,this.City,this.ZIPCode, this.County,this.State,this.Country); }
    }

答案 3 :(得分:0)

User Environment.Newline将在任何地方插入新行。

var addressFormat = this.Address1 +Environment.Newline+this.Address2+Environment.Newline;