asp.net gridview 文字欄位換行

asp.net gridview 文字欄位換行

這需求是想在顯示資料時

如果有多行就以填寫時的換行來呈現

 

在asp.net有2種做法

1-在資料庫中用SQL語法,把換行符號取代成 br就可以了

2-在寫資料時,存在資料庫前,把換行符號取代成 br就可以了

 

第1種方式不會把br一起存進資料庫中

只要對查詢語法更改就好

但麻煩的是每次查詢到要換行

SQL語法就要替換1次

 

第2種方法把用br取代換行存入資料庫中

只要正常查詢語法放在html頁面中

就會有換行的效果

 

以下範例

第1種:在查詢語法轉換

SELECT REPLACE([FILED],char(10),'<br/>') AS [FILED]

第2種:在填寫資料把換行轉成br

/// 保留訊息換行內容
internal string AppendContext(string TEXT)
{
        Regex regex_newline = new Regex("(\r\n|\r|\n)");
        var convertStr = regex_newline.Replace(TEXT, "<br/>");
        var result = "";

        //處理字串需保留 < br/ > 符合設定格式
        string[] line = convertStr.Split(new string[] { "<br/>" }, StringSplitOptions.None);
        foreach (string sETXT in line)
        {
            result += AntiXssEncoder.HtmlEncode(sETXT , true) + "<br/>";
        }

        return result;
} 

​

 

 

自我LV~