如何使用在宿主项目中声明并在生成的FunScript代码中通过Ajax服务的类型?
例如,假设我声明一个类型T,然后创建一个REST端点,以该格式提供数据服务。现在,如果我想从FunScript加载数据并使用它,那么它不再键入T。
根据Alfanso的答案编辑了解决方案:
假设"MyType“类型是在基本F#项目中定义的,并且该类型与本地主机上的数据匹配:6543/myData
let start () =
async{
let url = "http://localhost:6543/myData"
let req = System.Net.WebRequest.Create(url)
let! data = req.AsyncGetJSON<MyType list>()
Globals.window.alert( (sprintf "%A" data) )
}
|> Async.StartImmediate我错过的是
发布于 2014-11-16 13:38:29
你能不能发布一些代码,看清楚你到底想做什么?作为参考,您可以看到如何在此FunScript.HTML中使用小工程扩展来交换类型安全的JSON值的示例。在这种情况下:
CLIMutable和System.Data.Linq.Mapping.Table属性的System.Data.Linq.Mapping.Table记录:来源XMLHttpRequest,使用browser JSON.parse方法解析结果,并使用unbox<'T>将对象“强制转换”到所需的类型:这里、这里和这里。如果您想在unbox<'T>中以静态类型的方式使用动态类型,那么通常需要使用F#。
我希望这能帮到你!
https://stackoverflow.com/questions/26956814
复制相似问题