Web应用程序调用wcf方法从DB获取数据,但它是非常大的数据。这需要时间,在此期间整个应用程序挂起该特定用户,用户无法在Web应用程序中执行任何操作。 谁知道如何处理这个案子?这是否与wcf限制,实例模式或线程有关?当我们需要从数据库中选择非常大的数据并需要将其绑定到某个gridview时,请让我知道如何处理这种情况。如果数据非常大,则需要很长时间发生时间和时间到期异常。是否有任何好的文章或链接描述了如何在WCF服务中处理这些场景。
答案 0 :(得分:0)
你问了很多问题,最好问一个具体的问题。
应用程序挂起
如果应用程序是Windows窗体,则使用BackgroundWorker
或async
中的一个新webClient
方法访问Web服务。通过使用不同的线程,UI不会挂起。
如果应用程序是javascript,则使用Ajax
用于相同目的。
选择大数据
将Web服务转换为健谈的界面。而不是请求1M行数据,一次只要求一页。您也可以使用infinite scrolling
预取后台的下一页。
WCF实例模式
仅当同时向服务器发出请求时,才会影响速度。