gpt4 book ai didi

c# - 期望来自命名空间 'root' 的元素 '' ..遇到名称为 'None' 的 '',命名空间为 ''

转载 作者:行者123 更新时间:2023-11-30 17:44:38 33 4
gpt4 key购买 nike

过去 4 个小时我一直在寻找解决这个问题的方法,但我还没有找到解决方案。

我正在使用 .NET 构建 API,并希望解析从 API 调用发回的 JSON 信息。

我目前的做法是:

private void PostNewPlayer(HttpContext context)
{
// Create the serializer
context.Request.InputStream.Position = 0;

DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(ASPlayer));
ASPlayer p = (ASPlayer)json.ReadObject(context.Request.InputStream); <-- Exception here
Int32 playerId = ASPlayerManager.InsertNewPlayer(p);
}

但我目前在指示的行得到一个异常。我已确保我的类实现了正确的序列化命名空间:

using System.Runtime.Serialization;
using System.IO;
using System.Runtime.Serialization.Json;

我尝试序列化的类已经相应地设置了它的 DataContract 和 Member 字段:

[DataContract]
public class ASPlayer
{
[DataMember]
private string _name;
public string player_name
{
get { return _name; }
set { _name = value; }
}

[DataMember]
private string _location;
public string player_location
{
get { return _location; }
set { _location = value; }
}

// Other vars
...

public ASPlayer(string name, string location)
{
_name = name;
_location = location;
}
}

但是,当我使用 HTTP 客户端(例如 Postman)发出请求时,出现问题标题中所述的错误

enter image description here

最佳答案

我认为你标记了错误的变量,这个:

[DataMember]
private string _name;
public string player_name

应该是这样的:

private string _name;
[DataMember]
public string player_name

关于c# - 期望来自命名空间 'root' 的元素 '' ..遇到名称为 'None' 的 '',命名空间为 '',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29352110/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com