2015-09-15 68 views
0

我正在創建一個WCF服務,但是當我打電話給我所做的服務時,我遇到了一些問題。以下是該服務的代碼。WCF服務的問題。服務調用失敗

public void CreateTradeItemWithExtensions(string gtin, string targetMarketCountryCode, string effectiveDate, string publicationDate, string lastChangedDateTime, string tradeItemUnitDescriptor, string brandName, bool isTradeItemBaseUnit, string descriptionLanguage, string functionalName, string shortDecription, int gPC, string articleNumber, bool isTradeItemAConsumerUnit, bool isTradeItemADespatchUnit, bool isTradeItemAnOrderableUnit, bool isTradeItemAnInvoiceUnit, string startAvailability, bool isPackagingMarkedReturnable, string packagingTypeCode, bool isBarCodeOnPackageVariableMeasureBarCode, decimal netContent, decimal height, decimal grossWeight, decimal width, decimal depth, decimal netWeight, string isDangerousSubstance, string barCodeType, bool isPriceOnPack, string classComplianceRegulationCode, string consumerSafteyInformation, string doesTradeItemHaveAutoReaderTracker, bool isProductCustomizable, string isTradeItemACombinationItem, bool isTradeItemANonFunctioningDisplayUnit, bool isTradeItemRecalled, string primaryDistributionMethodCode, string rFIDTaggedCode, string serialNumberLocationCode, string tradeItemConditionTypeCode, string tradeItemCountryOfAssembly, string tradeItemCountryOfOrigin, string tradeItemOperatingEnvionment, bool isTradeItemAVariableUnit, int tradeItemId) 
    { 
     //Creating the basic trade item 
     CreateTradeBasicItem(barCodeType, classComplianceRegulationCode, consumerSafteyInformation, doesTradeItemHaveAutoReaderTracker, isBarCodeOnPackageVariableMeasureBarCode, isProductCustomizable, isTradeItemACombinationItem, isTradeItemANonFunctioningDisplayUnit, isTradeItemRecalled, primaryDistributionMethodCode, rFIDTaggedCode, serialNumberLocationCode, tradeItemConditionTypeCode, tradeItemCountryOfAssembly, tradeItemCountryOfOrigin, tradeItemOperatingEnvionment, tradeItemUnitDescriptor); 

     //Creating a GTIN for a trade item 
     CreateTradeItemIdentification(gtin); 
     //Adding a GTIN to a trade item 
     AddTradeItemIdentificationOnTradeItem(tradeItemId, GetNewestTradeItemIdentificationId()); 

     //Creating a targetmarket for a trade item 
     CreateBasicTargetMarket(targetMarketCountryCode); 
     //Adding targetmarket to a trade item 
     AddTargetMarketOnTradeItem(GetNewestTargetMarketId(), tradeItemId); 

     //Creating basic dates for trade item 
     CreateTradeItemDateBasicDates(effectiveDate, publicationDate, lastChangedDateTime, startAvailability); 
     //Adding basic dates to a trade item 
     AddTradeItemDateInformationsOnTradeItem(tradeItemId, GetNewestTradeItemDateInformationId()); 

     //Adding brand owner (GLN) on trade item 
     AddBrandOwnerOfTradeItemOnTradeItem(1, tradeItemId); 

     //Creating Trade item basic description information 
     CreateBasicDescription(brandName, shortDecription, functionalName, descriptionLanguage); 
     //Adding brand name to a trade item 
     AddTradeItemDescriptionInformationOnTradeItem(GetNewestTradeItemDescriptionInformationId(), tradeItemId); 

     //Creating basic unit indicator 
     CreateTradeItemBasicUnitIndicator(isTradeItemBaseUnit, isTradeItemAConsumerUnit, isTradeItemADespatchUnit, isTradeItemAnOrderableUnit, isTradeItemAnInvoiceUnit, isTradeItemAVariableUnit); 
     //Adding basic unit indicator to trade item 
     AddTradeItemUnitIndicator(GetNewestTradeItemUnitIndicatorId(), tradeItemId); 

     //Creating GPC on trade item 
     CreateGPCOnTradeItem(gPC); 
     //Adding GPC to trade item 
     AddGDSNTradeItemClassificationOnTradeItem(tradeItemId, GetNewestGPCId()); 

     //Creating Additional Trade Item Identification Value 
     CreateSupplierArticleNumber(articleNumber); 
     //Adding article number to GPC 
     AddClassificationCategoryOnGDSNTradeItemClassification(GetNewestGPCId(), GetNewestClassificationCategoryId()); 

     //Creating Trade item basic marking 
     CreateBasicPackagingMarking(isPackagingMarkedReturnable, isPriceOnPack); 
     //Adding trade item basic marking to trade item 
     AddPackagingMarkingToTradeItem(tradeItemId, GetNewestTradeItemMarking()); 

     //Creating Trade item basic packagin type 
     CreateBasicPackagingType(packagingTypeCode); 
     //Adding Trade item basic packagin item to trade item 
     AddPackagingTypeToTradeItem(tradeItemId, GetNewestPackagingTypeId()); 

     //Creating Trade item basic measurements 
     CreateBasicTradeItemMeasurements(depth, height, width, grossWeight, netWeight, netContent); 
     //Adding measurements to trade item 
     AddTradeItemMeasurementsOnTradeItem(tradeItemId, GetNewestTradeItemMeasurementsId()); 

     //Creating Basic Dangerous Substance Information 
     CreateBasicDangerousSubstanceInformation(isDangerousSubstance); 
     //Adding danger sub to trade item 
     AddDangerousSubstanceInformationOnTradeItem(GetNewestDangerousSubstanceInformationId(), tradeItemId); 

    } 

我使用WCF測試客戶爲例來測試服務。但是當我運行該服務並調用它時,我得到這個錯誤。

無法調用該服務。可能的原因:該服務離線 或無法訪問;客戶端配置與 代理不匹配;現有的代理無效。有關更多詳細信息,請參閱 的堆棧跟蹤。您可以嘗試通過啓動新代理,將 恢復爲默認配置或刷新服務來進行恢復。

我是一種新的「WCF世界」,所以我不知道如何處理這個錯誤。我目前使用wcf創建的自動生成的webconfig文件。我不知道這是否與它有關。我希望你們中的一些人可以幫助我提供的其他信息,如果你需要更多的答案,我會嘗試發佈。謝謝!

回答

0

我自己解決了這個問題。我需要在webconfig文件中創建一個新的終端節點

<services> 
     <service name="EPSystem.TradeItemService"> 
     <endpoint address="ITradeItemService.svc" binding="basicHttpBinding" contract="EPSystem.ITradeItemService" /> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 

然後我需要更改一些我調用的方法。但基本問題是我的終端無法使用。上面可以看到我所做的。