實體類與實體DTO類之間的轉換

2021-08-25 14:13:11 字數 1765 閱讀 1212

通過nuget包管理器新增newtonsoft.json 

構造乙個trans的靜態方法:

public static tout trans(tin tin)

前端呼叫:

people people = new people

;

構造乙個trans的靜態方法:

public static tout trans(tin tin)}}

foreach (var outproperty in tout.gettype().getproperties())}}

return tout;

}

前端呼叫:

people people = new people

;

靜態字典:

public static dictionary_dictionary = new dictionary();
構造乙個trans的靜態方法:

public static tout trans(tin tin)

_", tin.gettype().name, tout.gettype().name);

if (!_dictionary.containskey(key))

foreach (var item in typeof(tout).getfields())

memberinitexpression memberinitexpression = expression.memberinit(expression.new(typeof(tout)), memberbindingslist.toarray());

expression> lambda = expression.lambda>(memberinitexpression, new parameterexpression

);funcfunc = lambda.compile();

_dictionary[key] = func;

}return ((func)_dictionary[key]).invoke(tin);

}

前端呼叫:

people people = new people

;

構造乙個泛型快取類:

private static func_func = null;

foreach (var item in typeof(tout).getfields())

memberinitexpression memberinitexpression = expression.memberinit(expression.new(typeof(tout)), memberbindingslist.toarray());

expression> lambda = expression.lambda>(memberinitexpression, new parameterexpression

);_func = lambda.compile();//拼裝是一次性的

}public static tout trans(tin tin)

}前端呼叫:

people people = new people

;

實體類轉換DTO的方式

背景 在對外傳輸資料展示過程中,為了避免model層直接對外暴露,我們會多加乙個對應的dto保理想要傳輸的資料即可,隱藏model層。應對 1.第一種,如果是實體類字段型別都一樣,大部分會採用bean拷貝的方式,beanutils.copyproperties obj,obj 單個物件的轉換還好,但...

實體類轉換DTO的方式

背景 在對外傳輸資料展示過程中,為了避免model層直接對外暴露,我們會多加乙個對應的dto保理想要傳輸的資料即可,隱藏model層。應對 1.第一種,如果是實體類字段型別都一樣,大部分會採用bean拷貝的方式,beanutils.copyproperties obj,obj 單個物件的轉換還好,但...

json轉換實體類

import net.sf.json.jsonarray import net.sf.json.jsonobject 實體類轉換成json jsonobject jsonstu jsonobject.fromobject 實體類 json轉換成實體類person person person pers...