This is the Code I'm having problems with:
@{int i = 1;}
@foreach (var item in Model)
{
@:<ul id="sortablei" class='droptrue'>
i++;
}
How can I use i in the id sortablei? I tried: @i or @{i} but it seems without a space before the i its not working. I couldn't find an answer to my problem in the Razor Syntax Reference so I'm a bit clueless right now.
Brackets:
@:<ul id="sortable@(i)" class='droptrue'>
The brackets here scope the razor expression; in many cases they aren't required, however they are necessary when:
abc@def
- this has special handling to avoid breaking pages with email addresses in them something like this:
@model System.Generic.Collections.List<MyNameSpace.Product>
@{
int i = 1;
string sortablei = "abc",
droptrue = "abc-cls";
}
<ul id="@sortablei" class="@droptrue">
@foreach (var item in Model)
{
<li>@item.Qty x @item.Name</li>
i++;
}
</ul>
Here's a quick reference for your knowledge.
Seams like I didn't got it right,
as Mark said, all you need to do is surround the variable with brackets like
sortable@(i)
I hope the reference is somewhat useful, as your particular problem can be found in Explicit Expression example
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.