2017-10-28 82 views
0

我不知道它是否與abp有關,但我需要一個建議。比方說,我有「GetMyCustomEntityInput」,它有很多參數。由於nswag/refresh.bat在service-proxies.ts文件中沒有爲我提供輸入類,我應該在service-proxies.ts文件中實現自己的GetMyCustomEntityInput,如果是這樣,它會如何工作,並且它會是一個好方法嗎?我想知道abp社區如何處理這個案例,所以我想問。Aspnetboilerplate如何處理角度多個參數的輸入

在此先感謝。

+0

我們做類似'abp.services.project.customentity.get({param1:23,orderby:「desc」})' – Worthy7

+0

我想你在問什麼,如果你應該自己寫DTO打字稿。答案是**是**,這是一種痛苦,但是是的。我使用t4模板自動在TS中創建DTO類。 – Worthy7

+0

如果您更改了像AppService,API等影響客戶端應用程序(angularjs)的內容,您可以再次運行nswag以生成service-proxies.ts ...查看此工具https://github.com/RSuter/NSwag /維基/ NSwagStudio – tiennguyen

回答

0

請看看這個頁面,如何自動動態服務的WebAPI層角度服務集成:

https://aspnetboilerplate.com/Pages/Documents/Dynamic-Web-API#DocAngularSupport

例子:

(function() { 
    angular.module('app').controller('TaskListController', [ 
     '$scope', 'abp.services.tasksystem.task', 
     function($scope, taskService) { 
      var vm = this; 
      vm.tasks = []; 
      taskService.getTasks({ 
       state: 0 
      }).success(function(result) { 
       vm.tasks = result.tasks; 
      }); 
     } 
    ]); 
})(); 

的參數爲您DTO輸入不會自動轉換爲打字稿,您必須創建一個動態的輸入對象,所以請確保您的屬性名稱正確或不起作用。 您可以使用Typelite/t4模板自動創建您的Dto。