如何将对象从JavaScript传递到Windows运行时组件C#?

时间:2015-07-26 04:11:25

标签: javascript c# windows windows-phone-8.1 windows-8.1

我在JavaScript中有以下对象 param ,我想将其传递给Windows应用程序的C#Windows运行时组件。

var param = {
        "url" : "http://192.168.101.224/DEMO/All/DemoService.svc/login",
        "requesttype" : "POST",
        "paramss" : {
            "userName" : "demouser",
            "password" : "abcdef",
            "domain" : "demodomain",
            "accessKey" : "12345"
        }
    }
.....
callWebservice: function (param, callBack) {
        try {
            service = new ServcieRuntimes.Service();
            service.callHttpService(param).then(function (data) { ... )};

在C#,WinRT Component类中,我这样做。

 public IAsyncOperation<string> CallHttpService(string param)
    {
        return CallHttpServiceHelper(json).AsAsyncOperation();
    }

 private async Task<string> CallHttpServiceHelper(string param)
    {
        try
        { ....... }

但是我得到了

[object Object]

在C#中。

请帮我解决这个问题。提前谢谢!

1 个答案:

答案 0 :(得分:0)

您的C#代码需要一个(大概是JSON)字符串,您需要提供一个

service.callHttpService(JSON.stringify(param)).then(function (data) { ... )};

你目前得到

[object Object]

因为它是{} .toString();

的输出