我已经看过SO的一些例子了。我按照他们的例子,但我不确定为什么我的工作没有。
以下是代码:
In [269]: parser=argparse.ArgumentParser()
In [270]: def myerror(message):
.....: print(message)
In [271]: parser.error=myerror
In [272]: parser.add_argument('foo')
Out[272]: _StoreAction(option_strings=[], dest='foo', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None)
In [273]: parser.parse_args([])
the following arguments are required: foo
Out[273]: Namespace(foo=None)
Debug告诉我JSON(变量内容)如下所示:
[" {\" eventPK \":\" 321-0321 \" \" picturePK \":\&# 34; 019-5903 \"}"" {\" eventPK \":\" 203-1234 \" \&# 34; picturePK \":\" 013-2034 \"}"]
我添加了一个try / catch,并给出了以下消息:
转换价值时出错" {" eventPK":" 321-0321"," picturePK":" 019-5903" }"键入' learning.FeedRow'。路径' [0]',第1行,第112位。
答案 0 :(得分:0)
看起来content
被解析为一个字符串数组,在[和之前]之后立即看到双引号。
在阅读OP关于string []返回类型的评论后编辑:
NewtonJSON将/不能自动将字符串[]转换为具有两个属性的FeedRow对象。
我会尝试两种选择:
1.更改Web API以返回JSON对象[]而不是字符串[]
2.循环遍历content
的字符串(如果它确实是一个字符串[])并使用NewtonJSON将每个字符串转换为FeedRow对象并添加到List。