【问题标题】:How would i call WCF Rest service which datacontract parameter from Angular js?我将如何调用来自 Angular js 的数据合同参数的 WCF Rest 服务?
【发布时间】:2015-09-27 17:05:55
【问题描述】:
  [OperationContract]
    [FaultContract(typeof(DcCustomFaultMessage))]
    [WebGet(ResponseFormat = WebMessageFormat.Json,
     BodyStyle = WebMessageBodyStyle.Bare,
     UriTemplate = "/GetHistoryData")]
    List<DcHistoryData> GetHistoryData(DcHistoryCriteria criteria);

有多个参数

    [OperationContract]
    [FaultContract(typeof(DcCustomFaultMessage))]
    [WebGet(ResponseFormat = WebMessageFormat.Json,
     RequestFormat=WebMessageFormat.Json,
     BodyStyle = WebMessageBodyStyle.Bare,
     UriTemplate = "/GetHistoy?ReportingId={ReportingId}&ErrorCode={ErrorCode}&OriginatorCode={OriginatorCode}&PrimaryAssetClass={PrimaryAssetClass}&MessageType={MessageType}&FeedbackType={FeedbackType}&ReportType={ReportType}&RegionCode={RegionCode}&errorstatus={errorstatus}")]
    Stream GetHistoryData(string ReportingId, string ErrorCode, string OriginatorCode, string PrimaryAssetClass, string MessageType, string FeedbackType, int ReportType, string RegionCode, string errorstatus);

哪种方法更好?如何从 AngularJS 调用它?

如果服务是在没有参数的情况下通过 AngularJS 的以下调用定义的,我可以调用此服务:

 $http.get("http://localhost:55467/WCFServiceHost/DFAService.svc/GetHistorydata")
    .success(function (result) {
        alert('got history data');
        $scope.HistoryRejections = $.parseJSON(JSON.parse(result));    
    }).error(function (data, status, headers, config) {
        $scope.attributesData = null;
        $scope.showmessage("error", "error");
    });

如果有多个参数或datacontract参数,我不知道该怎么做?请帮忙。

【问题讨论】:

    标签: angularjs angularjs-service wcf-rest


    【解决方案1】:

    HTTP GET 请求不能包含要发布到服务器的数据。但是,您可以在请求中添加查询字符串。

    angular.http 为其参数提供了一个选项 您可以使用:

    $http({
           url: yourURL, 
           method: "GET",
           params: {ReportingId: '', ErrorCode: ''}
    });
    

    或者如果你想使用 $http.get():

    $http.get(yourURL, {
       params: {ReportingId: '', ErrorCode: ''}
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-20
      • 1970-01-01
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多