方式一:
需要通过引用动态运行库方式来支持对Camstar的WCF服务进行调用
InSiteXMLClient.dll
Camstar.Exceptions.dll
Camstar.Util.dll
Camstar.Utility.dll
Camstar.Constants.dll
SharpZipLib.dll
配置Web.config,和Endpoints.Config 文件搭配使用
app.config配置WCF 端点:
从C:\Program Files (x86)\Camstar\Camstar Portal 中的web.config 复制
<system.serviceModel> 节点到app.config或web.config中
Endpoints.Config 文件含入:
将Camstar安装目录中的Endpoints.Config 文件
含入到您的解决方案bin\debug (或者bin\release) 文件夹中
以下代码是公用代码,通过以下代码学习如何使用Camstar服务。备注:标红的部分为公共代码。
需要注意以下几点:
1、 XMLClient中输入的用户名和密码,不是数据库连接的用户名和密码,而是Camstar登陆的用户名和密码。
2、 Client.CreateDocumentandService("gwTestPrintDoc", "gwTestPrint");//创建服务并创建log文档。其中gwTestPrintDoc是创建服务的Doc文档,gwTestPrint对应Camstar中具体的Services。
方式二:
使用添加动态运行库方式进行Camstar的服务调用:
InSiteXMLClient.dll
Camstar.Exceptions.dll
Camstar.Util.dll
Camstar.Utility.dll
Camstar.Constants.dll
SharpZipLib.dll
以下代码是公用代码,通过以下代码学习如何使用Camstar服务。
MoveStdService moveStdService = new MoveStdService(new UserProfile(Constants.CamstarAccount, Constants.CamstarPwd, utcOffset));
MoveStd moveStdTxn = new MoveStd();
moveStdTxn.Container = new ContainerRef(mainBoardBarcode);
moveStdTxn.Resource = new NamedObjectRef(ResourceName);
moveStdService.BeginTransaction();
moveStdService.ExecuteTransaction(moveStdTxn);
ResultStatus resultStatus = moveStdService.CommitTransaction();
receiveBody.STATUS = resultStatus.IsSuccess ? "S" : "E";
if (!resultStatus.IsSuccess)
{
new LogHelper("CamstarTransaction").Info(">>>Container: " + mainBoardBarcode + ",MoveStd失败>>");
receiveBody.MESS = resultStatus.ExceptionData.Description;
new LogHelper("CamstarTransaction").Error("MoveStd:" + receiveBody.MESS);
return;
}
receiveBody.MESS = "移动下一站成功!";
PS:方式一:缺点:使用起来比较繁琐,如果有新增的WCF服务,需要手动更新Endpoints.Config 文件,优点:但是可以对于字段的管控不需要实时与MDB最新的WCF服务保持一致,MDB的开发和第三方代码开发互补干扰
方式二:缺点:需要和MDB最新的生成的WCF相关的动态运行库保持一致,MDB更新,相关引用的WCF.dll也需要更新, 优点:新手上手难度较低,相关字段可以通过联想自动检索带出。对于编写字段赋值比较友好。
标签:调用,Camstar,外部,代码,dllCamstar,WCF,new,config From: https://www.cnblogs.com/Zhu-jk/p/18044917