上周去总部学习使用这个东西,这个是Java写的,但我需要在.net环境中使用,以下是我的一些心得
一、EAS登陆接口
要是EAS的Webservice就得先调用EAS登陆接口,以下这个是总部提供的文档
* @param userName 用户名 String
* @param password 密码 String
* @param slnName eas String
* @param dcName 数据中心 String
* @param language 语言 String
* @param dbType 数据库类型 int
* @param authPattern 验证方式 默认 "BaseDB" ; 其他认证方式KEY可从easAuthPatterns.xml中获取 String
值得注意的是dcName,这个传的是数据中心的代码,而不是名称
二、科目缓存
EAS应用服务器只要一启动,Webservice的科目就会以缓存的形式存在了,即使马上改数据库,科目所以关联的核算项目是不改变的,估计是以对象的形式存在内存里面了,所以不要轻易改科目。
三、.Net中的使用
导入的接口是这样的:string[][] importVoucher(wsvoucher[], int isVerify, int isCashflow)
在Java中,返回值为二维数组是完全没有问题的,但在.Net里面,只要已添加引用,整个元数据的映射就自动创建,但是,.Net帮我们生成的函数头是返回一维数组,直接调用会抛出异常,即使在EAS成功导入凭证,我摸索的解决办法是在Reference.cs手动函数头改成二维数组,改了之后不随意更新Web引用,否则改了等于白改。