C# Sap.Net连接器3上的异步方法

C# Sap.Net连接器3上的异步方法,c#,asp.net,.net,asynchronous,sap-dotnet-connector,C#,Asp.net,.net,Asynchronous,Sap Dotnet Connector,我在C#.Net v4.5应用程序中使用SAP.Net Connector 3.0.0.42。到目前为止,我可以使用它而不会出现如下问题: var destination = RfcDestinationManager.GetDestination(destinationName); var repository = destination.Repository; var function = repository.CreateFunction(functionName); function.I

我在C#.Net v4.5应用程序中使用SAP.Net Connector 3.0.0.42。到目前为止,我可以使用它而不会出现如下问题:

var destination = RfcDestinationManager.GetDestination(destinationName);
var repository = destination.Repository;
var function = repository.CreateFunction(functionName);
function.Invoke(destination);
var resultTable = function.GetTable(tableName);  //This can be time consuming
有时,有些调用非常耗时,因为它们是IO绑定的操作,我想使其
异步
,以便在等待完成时不阻塞线程,但
Sap.Net连接器
不公开任何异步方法(据我所知)

我读过和,但要使用它,我需要低级的
async
方法向上传播,对吗?例如,从
Thread.Sleep
更改为
Task.Delay
。但是,如果没有这样的方法呢

我的第一个想法是使用
Task.Run
,但我读到它是用于CPU限制的操作的,使用它将拾取另一个线程并阻止它,因此它不是真正的
异步
。另外,如果我开发一个asp.net应用程序,它将从池中获取另一个线程,不是吗


所以,我的问题是,是否有可能在
async
方法中包装sync-IO绑定方法?
我真的认为我遗漏了一些东西。。。谢谢

插件中似乎没有本机支持,但正如Case Ahr所建议的,您可以在您的项目中实现