从帖子数据中返回一个字符串值

时间:2012-11-29 16:41:36

标签: c# asp.net .net asp.net-mvc-3

我正在与将数据发布到我的服务器的公司合作,我正在以这种方式接收xml数据:

using (StreamReader reader = new StreamReader(Request.InputStream))
{
    String xmlData = reader.ReadToEnd();
    XmlDocument doc = new XmlDocument();
    doc.LoadXml(xmlData);
}

但现在他们需要我给他们一个值。

我是否通过回帖发回给我的价值? 或者当我想为他们的帖子返回一个值时它是如何工作的?

应该返回的值是一个字符串。

用c#构建的项目

4 个答案:

答案 0 :(得分:2)

要向供应商返回任何类型的字符串,请尝试以下操作:

using (StreamReader reader = new StreamReader(Request.InputStream))
{
    String xmlData = reader.ReadToEnd();
    XmlDocument doc = new XmlDocument();
    doc.LoadXml(xmlData);
    Response.Write("MyString");
}

根据需要在“MyString”中指定任何内容。

答案 1 :(得分:0)

你已经在你的问题中包含了标签asp.net-mvc-3,所以我想你是在控制器中。 如果要返回一个简单的字符串,只需使用Content方法:

public ActionResult MyAction() {
    return Content("Your String")
}

答案 2 :(得分:0)

如果您只需要返回一个简单类型,例如整数,字符串或true / false,那么只需使用它就足够了:

Response.Write(returnVal);

或类似的。这不一定是“正确”的方法,如果你需要返回一个复杂的类型,比如一个对象,那么你可能最好将它序列化并将其作为json或XML返回。下面是一个使用xml作为空白aspx页面上的输出类型的示例:

我们

using System;

namespace myProject
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var o=new customObject
                {
                    prop1 = "Value1", 
                    prop2 = "Value2", 
                    prop3 = "Value3"
                };
            var x = new System.Xml.Serialization.XmlSerializer(o.GetType());
            Response.ContentType = "text/xml";
            x.Serialize(Response.Output, o);
        }
    }

    public class customObject
    {
        public string prop1;
        public string prop2;
        public string prop3;
    }
}

希望一切都有意义。

答案 3 :(得分:0)

  

我是否通过回帖发回给我的回复价值?

没有。你必须发送回复。

Or how does it work when i want to return a value for their post?

您所要做的就是从动作中返回正确的动作结果。对于前者您可以使用ContentResult返回一个简单的字符串,JsonResult返回json等。