我具有ViewModel和Items集合:
public class ItemViewModel{
public List<Item> Items {get;set;}
}
在我的Index.cshtml
上,我有:
@if(Model.Items != null){
<li><a id="item-id-link" href="#" data-items="@Model.Items"> ...
}
尝试使用打字稿获取数据:
function getData(context: Jquery){
....
context.find("item-id-link").click(e => {
const items = #(e.target).data('data-items');
});
}
由于项目内,我有项目数据类型列表,而不是项目列表:
"System.Collections.Generic.List`1[ItemViewModel]"
我尝试使用for of
来枚举此列表中的元素:
for (let item of items) {
console.log(item);
}
但它会向我返回"System.Collections.Generic.List'1[ItemViewModel]"
我也很累在剃刀页中添加.ToList()
,但这无济于事。
您能告诉我在这种情况下我该怎么办?
答案 0 :(得分:1)
@Model.Items
是集合,您需要对此进行更改
@if(Model.Items != null){
<li><a id="item-id-link" href="#" data-items="@string.Join(", ", Model.Items.Select(c=>c.Id))"> ...
// assume Item class has Id property
}