【问题标题】:How to add IDictionary<string,string> type from angular to webapi m ethod如何将 IDictionary<string,string> 类型从 Angular 添加到 Web api 方法
【发布时间】:2018-11-17 15:22:44
【问题描述】:

我有一个参数为IEnumerable&lt;IDictionary&lt;string,string&gt;&gt;的asp.net webapi

我使用以下值从我的角度前端调用此 api 方法:

var x = "{'state':california'}"

我有一个数组 var y = [];现在我想将 x 作为键值对象推送。

y.push({'state':'california'}).

现在当我做 y.push(x);它添加为字符串,即。 "{'state':'california'}"

由于是以字符串形式添加数组,所以在api方法中参数为null。

谁能帮我把这个项目作为该数组中的键/值对象?

谢谢

【问题讨论】:

  • var x= {state: 'california'}
  • 这不是硬编码值。这是在文本框中输入的。
  • var x = JSON.parse("{state: 'california'}")

标签: angular typescript asp.net-web-api2


【解决方案1】:

试试这样的

y.push(JSON.parse('{"key": 'state', "value": 'california'}'));

或类似的东西

var y= [];
y.push({ key: "state", value: "california" });
y.push({ key: "state", value: "other" });

希望这种方法中的任何一种都能奏效 - 快乐编码:)

【讨论】:

    【解决方案2】:

    将您的字符串转换为 json 对象

    var x = '{"state":"california"}' 
    y.push(JSON.parse(x))
    

    【讨论】:

    • 在位置 1 的 json 中获取意外令牌 '
    • 你的对象应该是这样的 '{"state":"california"}'
    【解决方案3】:

    我认为这可能会有所帮助

    声明:

     let  keyval: { [id: string]: string; } = { "state": "california", "SVR": "Chan" };
    
     y.push(keyval)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-06-22
      • 1970-01-01
      • 2017-11-27
      • 1970-01-01
      • 2014-03-23
      • 2010-09-24
      • 1970-01-01
      相关资源
      最近更新 更多