C# 在客户端和服务器端调用相同的方法
我的页面中有一个复杂的计算,我想在客户端和服务器端都执行它。为了便于维护,我更喜欢编写一个函数并在客户机和服务器中调用它 因此,我正在寻找一种方法,可以在C#code behind中调用javascript函数,或者其他可以满足需求的方法。我想到了一个基于服务的函数,我用ajax在客户端和服务器中将其称为一个简单的函数;然而,很明显,它在客户机中的工作速度会稍慢,因为它应该转到服务器并返回C# 在客户端和服务器端调用相同的方法,c#,javascript,asp.net,ajax,C#,Javascript,Asp.net,Ajax,我的页面中有一个复杂的计算,我想在客户端和服务器端都执行它。为了便于维护,我更喜欢编写一个函数并在客户机和服务器中调用它 因此,我正在寻找一种方法,可以在C#code behind中调用javascript函数,或者其他可以满足需求的方法。我想到了一个基于服务的函数,我用ajax在客户端和服务器中将其称为一个简单的函数;然而,很明显,它在客户机中的工作速度会稍慢,因为它应该转到服务器并返回 有什么想法吗 您可以在服务器上执行计算并将其发送回客户机,以完成客户机上的其余部分,或者执行ajax调用(
有什么想法吗 您可以在服务器上执行计算并将其发送回客户机,以完成客户机上的其余部分,或者执行ajax调用(在客户机上显示加载面板)并返回回调结果
如果你能提供更多的细节,你会得到更好的帮助。正如我在评论中所说的,我可以想到你在这里有三个选择
- 使用ajax调用从控制器获取结果(仅限于服务器端计算)
- 使用回发,这与上面的选项基本相同
- 使用像Jint这样的Javascript解释器在服务器端执行同一段Javascript
NET的流行Javascript解释器可能就是一个例子,它已经证明了它的稳定性和性能。您可能想查看它。不确定这在没有回发或ajax调用的情况下是否可行。。。另一种方法是用Javascript编写代码供客户端使用,然后使用Javascript解释器服务器端。但是我不确定我会更喜欢这个,而不是ajax调用,但是我相信如果你不介意额外的依赖性,它会更快。hmmm客户端理解html、css、js服务器端它理解真正的编程语言,所以不,使用ajax。或者使用javascript计算所需的内容,并通过ajax发送结果以在服务器端进行比较。您可以使用node.js作为服务器环境,然后相同的javascript计算代码可以在客户端和服务器上以相同的语言(javascript)运行。但是,通常情况下,您会在服务器上进行计算,然后通过ajax从浏览器中获取结果。那么web workers和服务器上的无计算呢?Jint,它是完美的,是满足我需求的一个很好的解决方案。非常感谢。很高兴能帮上忙!:)