ブラウザでページにアクセスするとxmlになりますが、URLをリクエストするとjsonになります。mvc 4 apiに、プログラムを介したリクエストに対してのみjsonを出力するものがありますか、それともxmlを取り戻すことができますか?注:これはデスクトップアプリケーションとウェブページで発生しているため、何らかの設定である必要があり、デスクトップから発生したエラーがあります:Data at the root level is invalid. Line 1, position 1.
はい、ドキュメントを正しく読み込んでおり、代わりにjsonを使用して値を確認しましたそしてそれは大丈夫に戻った。
private void Plus_Click(object sender, EventArgs e)
{
string FValue = id.Text;
string SValue = id2.Text;
string ending;
string url = "http://localhost:56254/api/add?id=" + FValue + "&id2=" + SValue;
XmlDocument xdoc = new XmlDocument();
xdoc.Load(url);
XmlNode xNode = xdoc.SelectSingleNode("End");
ending = xNode.InnerText;
Answer.Text = ending;
}
これは私のデスクトップアプリケーションコードです。xmlを取得する私のコードはここにあります:
namespace Calculator.Controllers
{
using Calculator.Models;
public class AddController : ApiController
{
public Calcs GetAddition(int id, int id2)
{
double end = id + id2;
Calcs[] calcs = new Calcs[] { new Calcs { FValue = id, SValue = id2, End = end } };
return calcs[0];
}
}
}
これがCalcsです:
namespace Calculator.Models
{
public class Calcs
{
public int FValue { get; set; }
public int SValue { get; set; }
public double End { get; set; }
}
}
ブラウザが出力するものは次のとおりです。
<Calcs xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Calculator.Models">
<End>60</End>
<FValue>55</FValue>
<SValue>5</SValue>
</Calcs>