条件& lt; br>用于c#中的地址格式

本文关键字:地址格式 用于 lt br 条件 | 更新日期: 2023-09-27 18:14:27

我正在格式化我的应用程序以显示与特定工作票相关的地址。有时,地址使用第二行。我不想使用以下语句:

<%: ticket.ADDRESS2 %><br />

在这种情况下,如果对象为null或空,我仍然得到休息,然后我有一个大的空间,看起来很有趣。

我想我可以生成自己的字符串,然后像这样把它转换成文字:

string str = ((Object)ticket.ADDRESS2 != "").ToString();
string sAdd2 = str + <br />;
myLiteral.Text = sAdd2;

但是,如果对象是null或空,这实际上并不能帮助我(事实上,我甚至不知道它是否工作)。

然后我试了这个:

public string sAdd2
    {
        get
        {
            Object oAdd2 = ticket.ADDRESS2;
            if (oAdd2 != null)
            {
                string sAdd2 = ((Object)ticket.ADDRESS2 != "").ToString();
            }
            else
            {
                string sAdd2 = ((Object)ticket.ADDRESS2 == "").ToString();
            }
        }
    }

有了这个,我在'get'得到错误(不是所有的代码路径返回值)。我觉得我在做一件简单的事情。我只想让我的页面显示

地址行1
地址行2
城市,州ZIP

地址行1
城市,州ZIP

谁有什么建议?我已经查找了"条件中断",但没有得到多少有用的返回。

条件& lt; br>用于c#中的地址格式

使用if语句

<%if (!string.IsNullOrEmpty(ticket.ADDRESS2)) { %>
   <%: ticket.ADDRESS2 %><br />
<%} %>

我过去所做的——在MVC项目中,但很容易在WebForms后面的代码中——是:

var lines = new [] {
  contact.Name,
  contact.AddressLine1,
  contact.AddressLine2,
  contact.AddressLine3,
  contact.PostCode
};
var address = String.Join("<br/>", lines.Where(l => !String.IsNullOrWhitespace(l));

,然后使用适当的方法将address作为原始字符串写出来。

删除空行,然后使用string.Join()添加新行。

// Get the address lines to be displayed
string[] lines = new string[]
{
   ticket.Address1,
   ticket.Address2,
   ticket.Address3,
   ticket.Address4,
   ticket.ZipCode,
};
// Remove blank lines
IEnumerable<string> filledLines = lines.Where(s => !string.IsNullOrWhitespace(s));
// Add newlines between each line
string html = string.Join(@"<br />", filledLines);