Làm cách nào để hiển thị một mẩu Html thành biến trong Razor? Trong Spark tôi sử dụng để viết các đoạn mã sau:Dao cạo - cách hiển thị nội dung thành biến số
<content var="t">
<a class="tab" href="">Tab name</a>
</content>
<content var="tc">
<div class="tabcontent">
<p>Here goes tab content</p>
</div>
</content>
!{tabs(t, tc)}
hai biến được truyền cho một macro mà làm tất cả các gói đẹp của nội dung vào tab sheet.
Cách tốt nhất để thực hiện tương tự trong Razor là gì?
Cập nhật: Tôi nghĩ rằng tôi đã nhận nó ..
Trong Razor, các @<text>...</text>
xây dựng có thể được sử dụng để sản xuất các biểu thức lambda, có thể được tái sử dụng sau này, đó là một tương đương dài gán một đoạn mã HTML vào một biến. Ví dụ trên có thể được triển khai theo cách sau:
Func<int, object> t =
@<text>
<a class="tab" href="">Tab name</a>
</text>;
Func<int, object> tc =
@<text>
<div class="tabcontent">
<p>Here goes tab content</p>
</div>
</text>;
@tabs(t(0), tc(0))
Tôi không thể tìm ra cách viết lambdas không tham số (Func<object>
). tham số int
trong cả hai lambdas ở trên là giả. Dao cạo dường như yêu cầu một tham số (và đã tạo ra một biến "item" để biểu thị nó trong biểu thức).
cảm ơn, tôi nghĩ rằng những gì tôi thực sự cần là một cú pháp inline helper. Tôi không điều này có sẵn trong Razor được nêu ra. giải pháp sẽ là khai báo một trình trợ giúp rõ ràng, có thể được gọi và kết quả có thể được gán vào một biến. – Andy
Tôi đã sai trong nhận xét ở trên. Cú pháp có sẵn, không yêu cầu người trợ giúp rõ ràng. Biểu thức lambda có thể được sử dụng thay thế. Xem câu hỏi được cập nhật của tôi. – Andy