Chúng tôi đã có chế độ xem (.cshtml) hiển thị XML cho nguồn cấp dữ liệu RSS bằng ASP.NET MVC 3, hoạt động tốt. Bây giờ chúng ta đã nâng cấp lên ASP.NET MVC 4 với Razor 2 nó tạo ra các lỗi biên dịch, tương tự như dưới đây.ASP.NET MVC 4 và Razor 2: Công cụ xem không còn hỗ trợ xml?
Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.
Parser Error Message: Encountered end tag "item" with no matching start tag. Are your start/end tags properly balanced?
Thẻ được cân bằng chính xác.
Mọi người đều có bất kỳ suy nghĩ nào?
UPDATE: tôi đã cô lập nó xuống các yếu tố liên kết trong mục yếu tố trong @foreach (...) {...} khối.
@foreach (var item in Model.Items)
{
<item>
<title>@item.Title</title>
<link>@item.Link</link>
<description>@item.Description</description>
<guid>@item.Guid</guid>
@if (item.PublishedDateUtc.HasValue)
{
<pubDate>@item.PublishedDateUtc.Value.ToString("ddd, dd MMM yyyy HH:mm:ss") GMT</pubDate>
}
</item>
}
tôi cố định nó bằng cách làm sử dụng @ Html.Raw dưới đây.
@foreach (var item in Model.Items)
{
<item>
<title>@item.Title</title>
@Html.Raw(string.Format("<link>{0}</link>", item.Link.ToHtmlEncoded()))
<description>@item.Description</description>
<guid>@item.Guid</guid>
@if (item.PublishedDateUtc.HasValue)
{
<pubDate>@item.PublishedDateUtc.Value.ToString("ddd, dd MMM yyyy HH:mm:ss") GMT</pubDate>
}
</item>
}
Bất kỳ ai có đề xuất nào tốt hơn? Rõ ràng, tôi chỉ có thể sử dụng một lớp để khai báo mô hình và trả về XML trực tiếp từ bộ điều khiển, nhưng tôi quan tâm hơn đến lý do hành vi này xảy ra và những gì tôi có thể làm để phù hợp hơn với cú pháp Razor.
bạn có thể đăng bài '' tag được thông báo lỗi được nói về? –
Đã cập nhật câu hỏi bằng thẻ và ** cách giải quyết **. Có suy nghĩ gì không? –