0

;フィールドの文字と改行を置き換える必要がありますp.notas。私はこれを試しましたが、改行を置き換えません。

var res = from p in miDataContext.clientes
          orderby p.nombreCom
          select                             
              (p.nombreCom ?? "") + ";" +
              (p.razon ?? "") + ";" +
              (p.nif ?? "") + ";" +                                 
              ((p.notas ?? "").Replace (";" ,"."))
                  .Replace(Environment.NewLine , ". ");
4

1 に答える 1

2

Environment.NewLine呼び出しで使用する際の問題Replace()は、環境内の改行文字が文字列で実際に使用されているものと必ずしも一致しない場合があることです。あなたのものはおそらく\r\n(ウィンドウ)を持っていますが、実際に保存されているのは\n. その場合、そのパターンは間違いなく文字列にはありません。すべての改行バリアントを確認する必要があります。

これが LINQ to SQL で問題ないと仮定すると、各改行タイプの置換呼び出しを追加するだけです。

var res = from p in miDataContext.clientes
          orderby p.nombreCom
          select
              (p.nombreCom ?? "") + ";" +
              (p.razon ?? "") + ";" +
              (p.nif ?? "") + ";" +                                 
              ((p.notas ?? "").Replace(";", "."))
                  .Replace("\r\n", ". ")
                  .Replace("\n", ". ")
                  .Replace("\r", ". ");
于 2012-06-02T11:03:44.127 に答える