2015-09-28 131 views
0

下面是使用SAP.Middleware.ConnectorSAP .NET连接器RfcDestinationManager.RegisterDestinationConfiguration抛出“未实现”异常

string destinationConfigName = "QA"; 
     IDestinationConfiguration destinationConfig = null; 
     bool destinationIsInitialised = false; 
     if (!destinationIsInitialised) 
     { 
      destinationConfig = new SAPDestinationConfig(); 
      destinationConfig.GetParameters(destinationConfigName); 

      if (RfcDestinationManager.TryGetDestination(destinationConfigName) == null) 
      { 
       RfcDestinationManager.RegisterDestinationConfiguration(destinationConfig); 
       destinationIsInitialised = true; 
      } 
     } 

public class SAPDestinationConfig:IDestinationConfiguration 
    { 
     public bool ChangeEventsSupported() 
     { 
      throw new NotImplementedException(); 
     } 
     public event RfcDestinationManager.ConfigurationChangeHandler ConfigurationChanged; 

     public RfcConfigParameters GetParameters(string destinationName) 
     { 
      RfcConfigParameters parms = new RfcConfigParameters(); 
      parms.Add(RfcConfigParameters.Name, "QA"); 
      parms.Add(RfcConfigParameters.AppServerHost, ConfigurationManager.AppSettings["SAP_APPSERVERHOST"]); 
      parms.Add(RfcConfigParameters.SystemNumber, ConfigurationManager.AppSettings["SAP_SYSTEMNUM"]); 
      parms.Add(RfcConfigParameters.SystemID, ConfigurationManager.AppSettings["SAP_CLIENT"]); 
      parms.Add(RfcConfigParameters.User, ConfigurationManager.AppSettings["SAP_USERNAME"]); 
      parms.Add(RfcConfigParameters.Password, ConfigurationManager.AppSettings["SAP_PASSWORD"]); 
      parms.Add(RfcConfigParameters.Client, ConfigurationManager.AppSettings["SAP_CLIENT"]); 
      parms.Add(RfcConfigParameters.Language, ConfigurationManager.AppSettings["SAP_LANGUAGE"]); 
      parms.Add(RfcConfigParameters.PoolSize, ConfigurationManager.AppSettings["SAP_POOLSIZE"]); 

      return parms; 
     } 
    } 

当我运行8号线(RfcDestinationManager.RegisterDestinationConfiguration(我的代码,我有问题与 destinationConfig)我得到一个“未实现”异常,说这种方法还没有实现。

这是什么原因造成的?我该如何解决?我试图用SAP提供的.NET 3.0连接器连接到SAP这段代码应该是注册目的地

+0

在什么地方SAPDestinationConfig类从何而来?这在官方文档中没有提及。 – vwegert

+0

对不起,我错过了。它是我构建的一个类,它为连接(用户名,密码,主机等)提供参数,并将其声明为SAPDestinationConfig:IDestinationConfiguration –

+0

编辑后显示类 –

回答

1

您的问题是与ChangeEventsSupported()方法的实现。您应该返回true或false,具体取决于您的接口实现是否支持“更改”事件。

鉴于上述代码的状态,例如,它应该是这样的:

public bool ChangeEventsSupported() 
{ 
    return true; 
} 
+0

+1,但不需要整个第一句话。我建议你通过编辑删除它。 StackOverflow的最佳实践是保持问题和答案直截了当。 –