[英]Generate javascript objects from C# dto classes
在我的 spa 應用程序中同步服務器 poco/dto 對象定義的最佳方法是什么? 因此,如果我有一個包含地址列表的類,那么在客戶端上我們希望有一個對象模板,我們可以使用它來創建一個地址實例以插入到地址列表中。 顯然,我們的對象圖要大得多,並且在開發過程中變化很大,因此手動保持這些東西同步並不是一個成功的解決方案。
c#dto類
puclic class dto{
dto()
{
addressList = new List<address>();
}
puclic List<address> addresses {get;set;}
public string otherField{get;set;}
}
public class address{
public string street{get;set;}
public string city {get;set;}
}
javascript 對象
var AddressClass = function(){
this.street ="";
this.city = "";
};
var Dto = function(){
this.addressList = [];
this.otherField = "";
};
一些在范圍內添加到 addressList 數組的地方
$scope.dtoClass.AddressList.push (new AddressClass() );
所以目標是服務器上的地址類和客戶端上的地址類。
sharp2Js是一個小型庫,可以創建鏡像C#POCO類的javascript對象,可以很容易地使用T4模板生成js文件
這是github上的網址https://github.com/castle-it/sharp2Js
您可能需要查看Automapper並創建轉換器,以便在發送之前轉換C#對象圖,以便它與客戶端上的javascript對象匹配。
我建議根據你的評論“很明顯我們的對象圖形更大,在開發過程中會發生很大的變化,因此手動保持這些事情並不是一個成功的解決方案。” 這將隔離您的轉換器以減少C#對象圖形大小,然后轉移到javascript到一個可單元測試的位置。
除非我完全誤解你想要什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.