c# - Calling dynamic callback function from an async method in the ScriptingObject of the BrowserControl throws Exception -


i'm calling callback function async function inside browser control scripting object. method first called javascript , tries callback. reason crashes application system.reflection.targetinvocationexception.

the method looks this:

public void searchapps(string query, dynamic callback) {     threadmanager.querygamesasync(query, mainform.portal, log,          (list) =>         {             string[] strlist = new string[list.length];             for(int = 0; < strlist.length; i++)             {                 strlist[i] = list[i].uid;             }             string data = json.serialize(strlist);             callback(data);         }); } 

and query method looks this:

public static async void querygamesasync(string query, portal p, log log, action<game.identifier[]> callback) {     callback(await task.factory.startnew<game.identifier[]>(() => { return game.find(query, p, log); })); } 

(i'm using microsoft await binding .net 4.0 , winforms default browser control)

the full exception looks this: http://pastebin.com/it9mtrak

edit:

the problem seems happen when call async function javascript callback function:

function searchgames(query) { window.external.searchapps(query,     function (list)     {         var js = json.parse(list);         (var = 0; < js.length; i++) {             //window.external.log(js[i]);             appendappbox(el, list[i]);          }     }); } 

and

function appendappbox(parent, uid) {     window.external.getappinfo(uid, function (json) {         var info = json.parse(json);         parent.innerhtml += getappbox(info);         updateappstatus(uid);     }); } 

as can see, callback search calls appendappbox, in turn calls getappinfo callback function parameter. both callback functions work on own, application crashes when nested. why ? tried invoking callbacks via browsercontrol, didn't make difference.

okay found issue. perplexingly simple js syntax error caused ton of exceptions point of crashing visual studio. caught exception , turns out hresult 0x80020101 points simple javascript syntax error in callback function.


Comments