json は、ajax で一般的に使用されるデータ型であり、頻繁に使用されます。しかし、フィールドに改行文字が表示された場合はどうすればよいでしょうか?
削除するのは明らかに不適切です。一部のフィールドにはすでに改行が含まれていますが、それらを削除するにはどうすればよいですか?
json クラスの処理をテストしましたが、何も見つかりませんでした。予想外に、最終処理は非常に簡単です:
バックグラウンド コードは改行文字 rn を次の文字に置き換えます。
\n、フロントエンド コード js が受け取る文字は次のとおりです。
n
public static string ConvertFromListTojson( IList{
string[]cols = columnInfos.Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries); StringBuilder sb = new StringBuilder(300);
sb.Append("{"total":");
sb.Append(","rows":"); ;
sb.Append("[");
foreach (リスト内の T t)
{
sb.Append("{");
foreach (列内の文字列) 🎜>{
文字列名 = ""{0}":"{1}",";
文字列値 = getValue(t, Col);
値 = value.Replace(" rn", "\r\n");
sb.Append(string.Format(name,col,value));
}
if (cols.Length > 0)
{
int length = sb.Length;
sb.Remove(length - 1, 1);
sb.Append("},"); list.Count > 0)
{
int length2 = sb.Length;
sb.Remove(length2 - 1, 1); ]") ;
sb.Append("}");
return sb.ToString();
}
private static string getValue(T t, string pname) ここで、 T : class
{
Type type = t.GetType();
PropertyInfo pinfo = type.GetProperty(pname);
if (pinfo != null)
{
object v = pinfo.GetValue (t, null);
return v != null ? v.ToString() : "";
else
{
throw new Exception("属性は存在します" pname) ;
}
}