Asp.net MVC动态设置TextArea

时间:2014-07-22 13:24:34

标签: c# asp.net-mvc razor html-helper

我正在开发Asp.net MVC5应用程序。

我需要将一些XML写入textarea,因此稍后可以通过我的项目中的一些JavaScript来解析它。截至目前,我已将XML信息加载到ViewBag中,并想知道如何使用此信息动态设置textarea。

我的控制器(索引):

        XmlDocument doc = new XmlDocument();
        doc.Load("C:\\Tasks.xml");
        ViewBag.xml = doc.InnerXml();

谢谢,非常感谢任何帮助。

1 个答案:

答案 0 :(得分:4)

-- html form

    @Html.TextArea("xml")
    <input type="submit" value="Save" />

-- html form

发布行动

[HttpPost]
public Actionresult SomeAction(string xml){...}

更好的解决方案(使用强类型视图)

<强>模型

public class XmlViewModel
{
    public string Xml { get; set; }
} 

控制器

public Actionresult SomeAction()
{
    XmlDocument doc = new XmlDocument();
    doc.Load("C:\\Tasks.xml");
    var model = new XmlViewModel
    {
        Xml = doc.InnerXml();
    }

    return View(model);
}

[HttpPost]
public Actionresult SomeAction(XmlViewModel model)
{
    ...       

    return View(model);
}

查看

@model XmlViewModel 

-- html form

    @Html.TextAreaFor(x => x.Xml)
    <input type="submit" value="Save" />

-- html form