最近公司開發專案前端使用乙個js框架,後端使用ef,js前台讀取的json採用實體的dto來進行生成。
1.普通的對映。
publicclass
userinfo
public
string name
public
string address
}public
class
userinfodto
public
string address
}
2.有外來鍵關聯,需要對映出外鍵所帶名字
public
class
userinfo
public
string name
public
string address
public teacher teacher
}public
class
teacher
public
string name
}public
class
userinfodto
public
string name
public
string
teacher
}var user = new
userinfo
};newdefaultmapconfig()
.convertusing
string>(t =>t.name)
);3.兩個實體之間名字不一致,需要對映。
public
class
userinfo
public
string name
public
string address
}public
class
userinfodto
public
string name
public
string useraddress
}newdefaultmapconfig()
.matchmembers((x, y) =>
return x ==y;
}));
4.需要對某乙個字段進行特殊處理
public
class
userinfo
public
string name
public
string address
}public
class
userinfodto
public
string name
public
string useraddress
public
string userjson
}var user = new
userinfo ;
newdefaultmapconfig()
.postprocess
((value, state) =>";
return
value;
}));
5.忽略掉某個欄位的對映
public
class
userinfo
public
string name
public
string address
}public
class
userinfodto
public
string name
public
string address
}var user = new
userinfo ;
newdefaultmapconfig()
.ignoremembers
(new
string )
);6.給空元素賦預設值
public
class
userinfo
public
string name
public
string address
public datetime? godate
}public
class
userinfodto
public
string name
public
string address
public datetime godate
}var user = new
userinfo ;
newdefaultmapconfig()
//如果日期為空設定為當前時間
.nullsubstitution((value) =>datetime.now)
//如果string型別為null賦值為「」
.nullsubstitution((value) => ""
) );
常用的就上面幾點,對於更深入的。有待以後研究。。。。。
使用Emit Mapper自動對映不同類的屬性值
應用場景 class a 和 class b有一樣的屬性,a a new a b b new b 要把a的值賦給b 傳統方法通過反射遍歷a和b的所有屬性,然後逐一賦值 可以定義對映規則 new defaultmapconfig 支援的方法 描述 convertusing 為指定的成員提供自定義的轉換...
webpabe的使用小結
1.前端的工程化工具 gulp webpack 主流 2.webpack.config.js配置 專案 優先找本地 全域性 3.概念 webpack是一種靜態編譯工具 預編譯 入口檔案 出口 轉換器 外掛程式 webpack 打包 development 開發環境 production 生產環境 w...
Repo 的使用小結
一 安裝 建立目錄和修改環境變數 mkdir bin path bin path curl bin repo chmod a x bin repo 二 幫助 repo help查詢具體命令的幫助 repo helprepo 倉庫狀態 repo help init狀態 repo status 三 初始...