我目前正在使用Asp.Net MVC和C#開發應用程序。其中一個要求是檢查項目是什麼進程,然後只顯示適當的div。所以,我決定創建一個數據庫中的表,其包括:根據布爾值顯示在視圖中隱藏div
Id ProcessDescription DivOneVisible DivTwoVisible
1 Approved True False
2 Analysis True True
...
注 - ID和ProcessDescription永遠不會改變
目前該表僅持有10行數據,但想法將來可以添加更多的行/列。
我然後繼續創建適當的方法,一個用於每個股利如下
public bool ShowDivOne(int id)
{
var data = uow.GetRepository<ItemProcess>().GetById(id);
bool showDivOne = data.DivOneVisible.HasValue ? data.DivOneVisible.Value : false;
if (showDivOne)
return true;
else
return false;
}
我使用相同的代碼作爲上述用於ShowdivTwo()
方法,但是匹配不同的列中。然後在視圖中我做
@if(ShowDivOne){//div one code here}
@if(ShowDivTwo){//div two code here}
這工作,但我不知道是否有一個更通用的方法,我可以寫一個方法,將涵蓋即使添加了新的行或列的每個場景。
你意識到你可以做'返回data.DivOneVisible.HasValue? data.DivOneVisible.Value:false;' –
@StephenMuecke但我仍然需要爲每個div編寫方法 – Code
我只是評論你的方法中的(無意義的)if if塊:) –