前篇《https://www.cnblogs.com/ls0001/p/17437225.html》有大佬在評論里劇透了,這里就來一遍劇透,
??通常,前后端分離的系統要在前端查詢資料是提交一個帶著查詢條件引數的表單,比如A=1,B=2,類似樣,后端接收到表單需要將這些條件引數拼接成查詢需要寫代碼,并且表單結構通常是不帶查詢邏輯屬性的,只能用and來聯接這些條件,給查詢的靈活性帶來了局限,
本框架就是要提供更靈活的,后端不需要寫代碼的一個查詢能力,
其中一個主要的應用場景正是實作實作只需前端傳遞JSON格式的查詢條件到后端,后端無需寫查詢代碼就能進行查詢,
其流程如下圖所示:

舉個例子:
前端提交來的查詢JSON:
{
"lg": "", "filters":
[
{
"lg": "", "Predicates":
[ { "lg": "", "Name": "id", "Op": ">", "Value": 1 } ]
},
{
"lg": "and", "Predicates":
[ { "lg": "", "Name": "id", "Op": "<", "Value": 10 } ]
},
{
"lg": "and",
"Predicates":
[
{"lg": "","Name": "name", "Op": "=", "Value": "MyName"},
{"lg": "or","Name": "name","Op": "=","Value": "HisName"}
]
}
]
}
后端只要如下代碼就可以了:
Query.Where(QueryFilterBuilder.CreateFilterExpression<Entity>(上面的JSON));
?
盡管前端JSON的構造也需要一個輪子,后續再說,本篇暫且先到這,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/553779.html
標籤:架構設計
上一篇:【實踐篇】手把手教你落地DDD
下一篇:返回列表
