将XML(格式化方式)显示到Razor Textarea中

use*_*912 3 c# xml razor asp.net-mvc-4

我有一点问题.我有一个字符串(包含XML代码).例:

<PosizioneRischio>
 <ParametriInput>
  <Utente>Utente</Utente>
<Input>
  <ClienteRichiesto>
    <CodiceCR>1</CodiceCR>
    <CodiceCRA />
  </ClienteRichiesto>
  <IstitutiRichiesti>
    <IstitutoRichiesto>1</IstitutoRichiesto>
  </IstitutiRichiesti>
  <DateContabiliRichieste>
    <DataContabileRichiesta>2014</DataContabileRichiesta>
    </DateContabiliRichieste>
 </Input>
 <ScalaImporti>5000</ScalaImporti>
</ParametriInput>
<PosizioneRischio>
Run Code Online (Sandbox Code Playgroud)

我想用格式化的方式用剃须刀在textarea中显示它.

支持字符串名称是"xmlstring",我想做类似的事情:

@Html.TextArea("Info",xmlstring, new {cols="105", rows="30",@readonly="readonly",@disabled="disabled" })</td>
Run Code Online (Sandbox Code Playgroud)

但是以这种方式,xml代码显得扁平化.显然结果没有格式化.我怎样才能格式化?对不起,这个问题......我是新手

Ily*_*nov 12

var xml = "<root><A><B>0</B><C>0</C></A><D><E>0</E></D></root>";

XDocument doc = XDocument.Parse(xml);
Console.WriteLine (doc.ToString());
Run Code Online (Sandbox Code Playgroud)

将打印:

<root>
  <A>
    <B>0</B>
    <C>0</C>
  </A>
  <D>
    <E>0</E>
  </D>
</root>
Run Code Online (Sandbox Code Playgroud)

所以你需要这样做

@Html.TextArea("Info", XDocument.Parse(xmlstring).ToString(), new {cols="105", rows="30", @readonly="readonly", @disabled="disabled" })</td>
Run Code Online (Sandbox Code Playgroud)