这些天要做一个小项目——用Windows服务调用SAP接口获取数据。网上百度之,确定了方案——用SAP .NET Connector 3.0来与SAP系统交互。用Win7 Ultimate,Visual Studio 2010 Ultimate——于是,我就想用.NET Framework 4.0——于是就有了后来的那个烦人的异常~~~(有时候用最新的东西风险还是不小的)。

  我是把与SAP接口交互的业务逻辑写在一个类库项目中,生成dll后供Windows服务调用。当我安装完服务后,看输出的跟踪日志,看到了异常信息——“SAP.Middleware.Connector.RfcDestinationManager”的类型初始值设定项引发异常。TAT~~

 1 ///<summary> 2 /// 获取RFC连接目标 3 ///</summary> 4 private RfcDestination GetDestination() 5 { 6   try 7   { 8    var destinationName = "lgdderp";//SAP系统标识 9    IDestinationConfiguration destinationConfiguration = new SAPConfiguration();10    RfcDestinationManager.RegisterDestinationConfiguration(destinationConfiguration);//这里就引发了那个讨厌的异常~11    /*返回指定名称的目标对象。RfcDestinationManager会检查目标对象是否已经创建,如果未创建,则向配置对象请求必要的登录参数并创建目标对象。若配置对象未被应用程序注册,则会抛出异常。*/12    RfcDestination rfcDestination = RfcDestinationManager.GetDestination(destinationName);//13    RfcDestinationManager.UnregisterDestinationConfiguration(destinationConfiguration);14    return rfcDestination;15   }16     catch (Exception ex)17     {18        Logger.Log("获取SAP连接目标时发生异常:" + ex.Message);19        return null;20     }21}

  于是我新建一个测试项目,用VS里面的测试项目(好像要安装Resharper 6.0哦~)来调用dll,嘿,居然能够运行正常,用Winform调用时却又引发了异常——头大啊!去调试,跑到上面所示代码的第10行,就出现异常了~~……后来,去看了异常里面的那个 InnerException的信息——“混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集”。OMG,灵感终于出现,也许是运行时版本兼容的问题。于是百度之——【http://blog.163.com/gz_ricky/blog/static/182049118201011104210827/】, 照着修改后,在Winform里面没问题了。可是!可是Windows服务里面还是报那个异常——虽然我也把服务项目里面的那个app.config文件修 改了!好吧,换FR版本——换成3.5吧~……终于改完,安装,查看输出日志——OK!好了。

http://www.cnblogs.com/redleaf-me/archive/2011/10/31/NET-invoke-SAP-Exception.html

转载于:https://www.cnblogs.com/JackSun/archive/2012/08/03/2622150.html

.NET与SAP的来往(转)相关推荐

  1. 为什么中国难以诞生像SAP、甲骨文一样的企业级服务公司?

     关注ITValue,查看企业级市场最新鲜.最具价值的报道! 美团点评联合创始人王慧文曾在2013年的时候做了这样一件事-- 他把美国科技业的公司和中国的公司拉了一个名单,试图从中寻找出在美国已经很厉 ...

  2. SAP软件的强大“远不止于此”

    长期以来,业界贬低SAP声音此起彼伏,好不热闹!什么界面丑陋,操作繁琐,缺乏灵活性.技术陈旧.价格昂贵.然而趋势恰恰相反,SAP不仅没有被这些声音淹没,反而越战越勇,而今SAP几乎攻陷中国所有央企和绝 ...

  3. SAP相对其他erp软件的优势

    为什么我认为SAP是世界上最好用最牛逼的ERP系统,没有之一?玩过QAD.Tiptop.用友等产品,深深觉得SAP是贵的有道理! 一套好的ERP系统,不仅能够最大程度承接适配企业的管理和业务流程,在技 ...

  4. 为什么我会认为SAP是世界上最好用最牛逼的ERP系统,没有之一?

    为什么我认为SAP是世界上最好用最牛逼的ERP系统,没有之一?玩过QAD.Tiptop.用友等产品,深深觉得SAP是贵的有道理! 一套好的ERP系统,不仅能够最大程度承接适配企业的管理和业务流程,在技 ...

  5. 【第八篇】SAP ABAP7.5x新语法之F4增强【续】

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之F4增强[续] 前 ...

  6. SAP Cloud for Customer客户主数据的重复检查-Levenshtein算法

    SAP C4C的客户主数据创建时的重复检查,基于底层HANA数据库的模糊查找功能,根据扫描数据库中已有的数据检测出当前正在创建的客户主数据是否和数据库中记录有重复. 在系统里开启重复检查的配置: 在此 ...

  7. fb50 sap 报记账码未定义_SAP隐秘的角落:记账代码Posting Key

    从会计角度来看,记账其实只有借和贷.有借必有贷,借贷必相等.但是在SAP中的借贷确有着不同的Posting Key. 刚接触SAP的时候,对借贷的印象是这样的.对客户收入记账是: 01客户代码 Cus ...

  8. sap可以指定应用服务器,SAP扫盲系列之一:什么是SAP系统和应用服务器

    Jerry Wang,2007年加入SAP成都研究院工作至今,至今为止有13年的ABAP开发经验,SAP社区导师,SAP中国技术大使. SAP Netweaver Application Server ...

  9. sap系统前台数据与后台表之间_数据治理之SAP软件非生产数据清除方法

    作者:JongWill声明:本文章仅用于SAP软件的应用与学习,不代表SAP公司.(注:文中所示截图来源SAP软件,相应著作权归SAP所有.) 我们知道SAP系统软件往往在使用多年后,底层数据库中的数 ...

  10. SAP BADI应用

    SAP BADI应用 1.定义BADI          1) T-Code:  SE18     Business Add-In Define. 2) 输入要创建的BADI的名字,点击"C ...

最新文章

  1. SCCM2012系列之三,SCCM2012部署前的IIS准备
  2. MyBatis学习--简单的增删改查
  3. mysql5.2 软件园_MySQL Server V5.5 官方安装版
  4. 轮盘赌算法的java实现算例
  5. Python操作文件文档
  6. Selenium操作页面元素
  7. 为nopcommerce自定义用户积分功能(1)
  8. java 保存 设置_java的保存按钮怎么设置?
  9. pandas小记:pandas数据结构和基本操作
  10. 【实用】excel中创建项目进度计划
  11. 自建nod32更新服务器,ESET NOD32镜像更新服务器
  12. 【机械】如何用SOLIDWORKS进行ArtCam雕刻机排版
  13. 数据清洗有哪些方法?
  14. win7系统如何添加打印机服务器,怎样如何添加打印机驱动步骤
  15. 报表中小计汇总总计在代码实现
  16. 【python基础】python中的乌龟画图
  17. 舆情监测技术方案,网络舆情分析技术手段有哪些?
  18. 粽子大战 —— 猜猜谁能赢
  19. 掷一枚硬币,直到连续出现两次正面朝上的时候停止,问掷硬币次数的期望
  20. 全国软件测试培训机构名单已发布

热门文章

  1. Python 链表实现
  2. java LineRecordReader类解析
  3. SQL-SERVER触发器
  4. 解析库之——beautifulsoup
  5. 项目管理:实现按时、按预算、基于目标的交付的七个步骤
  6. 《Linux菜鸟入门2》访问网络文件系统
  7. oracle 之 游标
  8. 企业级nginx服务优化(三 )Apache+防盗链
  9. Android:更好的自定义字体方案
  10. hdu 4970 树状数组 “改段求段”