各位大神好:
小弟我最近遇到一個小問題是有關資料庫查詢與讀取,相關的資料庫明細如下圖所示:
(p.s.方案為複合鍵)
簡單說明一下:
一個專案裡會有多個屬性,同專案裡面每個屬性皆有相同數量的方案,如下圖所示:
請問有無辦法在mvc裡僅輸入專案編號(即Prj01)就有辦法列出所有屬性的方案之數值,並且儲存到陣列裡以利後續運算?
這應該是屬於SQL的問題吧,
跟MVC無關,
另外建議欄位名稱不要用中文.
SELECT Table1.專案編號, Table1.專案名稱, Table2.屬性編號, Table2.屬性名稱, Table3.方案編號, Table3.方案名稱, Table3.分數
FROM Table1
INNER JOIN Table2 ON Table1.專案編號 = Table2.專案編號
INNER JOIN Table3 ON Table2.屬性編號 = Table3.屬性編號
WHERE Table1.專案編號 = 'Prj01'
記得要使用參數查詢
才不會有SQL Injection的問題.
看不太懂你的問題。
1:join資料表產生sqlview的反正規化表格提供查詢
2:寫nested class存放資料,提供函式傳入參數,並遞迴輸出集合,或是flatten成key,value結果的集合。
dbContext.專案
.Where(o=>o.專案編號=="prj01")
.Include(o=>o.屬性)
.ThenInclude(x=>x.方案)
.Select(o=> o.屬性.方案.分數)
.ToArray()
不負責任Linq...XD