コード例 #1
0
 public bool Connect(ErpLogin login)
 {
     Log.InfoFormat("Connect to: {0}", login.ConnectionString);
     try
     {
         Login = login;
         ExecuteOnDatabase(database => database.GetCollection <Material>());
         return(true);
     }
     catch (Exception exception)
     {
         Log.Error(exception);
         return(false);
     }
 }
コード例 #2
0
        public WebService()
        {
            var erpStorageConfiguration = GetErpStorageConfiguration();
            var storeForBinaryFiles     = erpStorageConfiguration.Settings["DatabaseFileLocation"].Value;
            var binaryStoreDirectory    = new DirectoryInfo(storeForBinaryFiles);

            var erpManager = new ErpManager.Implementation.ErpManager(binaryStoreDirectory);
            var erpLogin   = new ErpLogin
            {
                ConnectionString = erpStorageConfiguration.Settings["FileStorageLocation"].Value,
                UserName         = "******",
                Password         = "******",
                Mandant          = 2020
            };

            Log.Info("Connecting to ERP...");
            var connected = erpManager.Connect(erpLogin);

            if (!connected)
            {
                throw new Exception(string.Format("Failed to connect to ERP with Connection-String: {0}", erpLogin.ConnectionString));
            }

            AddMethod(new Materials(erpManager));
            AddMethod(new BomHeaders(erpManager));
            AddMethod(new BomRows(erpManager));
            AddMethod(new Documents(erpManager));
            AddMethod(new Categories(erpManager));
            AddMethod(new Documents(erpManager));

            if (OperationContext.Current != null)
            {
                OperationContext.Current.Host.Description.Behaviors.Add(new ServiceDiscoveryBehavior());
                OperationContext.Current.Host.AddServiceEndpoint(new UdpDiscoveryEndpoint());
            }
        }