1
我想在我看來,建立HTML:lambda表達式:獲得基於另一個屬性的屬性
對象內部<div class="row contentHeaderInfo">
@foreach (var groupedItems in Model.DSet.GroupBy(a => new {a.rowId}))
{
<ul>
@foreach (var item in groupedItems)
{
<li>@item.Label @item.labelValue</li>
}
</ul>
}
</div>
數據,其中的ROWID = 1:
groupedItems[0] = {1,"FName","ABC"}
groupedItems[0] = {1,"LaName","DEF"}
groupedItems[0] = {1,"Address",""}
groupedItems[0] = {1,"City","LosAngeles"}
groupedItems[0] = {1,"State","California"}
groupedItems[0] = {1,"Zip","90045"}
groupedItems[0] = {1,"Street","Cardiff"}
groupedItems[0] = {1,"House No","1234"}
groupedItems[0] = {1,"Apt","1"}
對於某些label
我想要在<a>
標籤內放置多個labelValues
。
例如如果@item.Label = "Address"
那麼我想
<li> Address <a href ="blah"> 1234 Cardiff LosAngeles California 90045 </a></li>
而其餘的(APT,房子沒有,城市,州,郵編),所以不會單獨出現。用lambda表達式實現這個可能嗎?
我不認爲lambdas或linq會是一個很好的解決方案,因爲這些元素可能不會按您期望的順序進來。在嘗試將它們插入到HTML中之前,它可能更好地處理代碼中的對象。 – chustar 2015-02-06 00:40:01
謝謝你。確信在代碼背後做到這一點非常合理。 – BumbleBee 2015-02-06 00:46:43
你可以使用'groupedItems.Singe(item => item.Label ==「House No」)來創建字符串。labelValue + ...'。但是在後面的代碼中處理對象會更好。 – raznagul 2015-02-06 01:15:38