【发布时间】:2014-12-03 13:13:17
【问题描述】:
我正在尝试用 c# 编写代码,该代码从数据库中检索数据并将该数据传递给 javascript(在循环中一次一条记录),以便通过 google map api 进行处理。该javascript返回一个字符串列表,我用它来进行进一步处理并通过c#保存到db。
直到现在我才意识到,即使我们在循环中编写了 javascript 函数,它也只会被调用一次。此外,我什至不知道如何从 javascript 返回字符串列表并在 c# 中使用它。
我对此非常困惑。能否请教一个好的有效的方法?
谢谢。
这是我写的代码,但是没有用。
foreach (LocationDataPacket d in l)
{
if (d.cellPhoneGPSData == current_cell)
{
lat1 = lat2;
long1 = long2;
lat2 = d.Lat;
long2 = d.Long;
ScriptManager.RegisterStartupScript(this, GetType(), "check", "check("+d.ID+");", true);
}
else
{
lat2 = d.Lat;
long2 = d.Long;
current_cell = d.cellPhoneGPSData;
}
}
【问题讨论】:
-
什么版本的 .NET?对于“一个 ASP.NET”的变化,您是否足够及时,例如在与 Web API 和/或 SignalR 相同的 Web 应用程序中运行 WebForms(
ScriptManager表示 WebForms)。后两者都非常有能力来回转换 JSON 内容。 -
我使用的是 .net 4.5 版本。我见过 SignalR 但还没有尝试过。到目前为止,我一直在尝试调用客户端函数,但不幸的是服务器端不会等待客户端并执行所有任务而无需多次调用客户端代码
-
整个WebForms模型试图隐藏HTTP底层的无状态。但是,要让处理从服务器切换到客户端并返回,您将不得不撤消该抽象。
-
C# 执行发生在服务器上。 Javascript 执行发生在客户端。您确定客户需要参与其中吗?听起来您正在尝试执行一个纯粹基于服务器的进程:1)从服务器本地数据库获取 data1,2)使用 data1 从 Internet 源获取 data2,3)将 data2 保存到服务器本地数据库。
-
@pseudocoder 我认为您正确理解了这个问题。 Google Map Api 是基于 javascript 的,因此我使用它的 api 来获取一些与我在 db 中的数据相关的数据。我认为我除了做我正在做的事情之外别无选择
标签: javascript c# asp.net web-services google-maps-api-3