Код MVC в пользовательском контроле дает ошибку:
Я пытаюсь показать продукты, полученные из базы данных, создав пользовательский элемент управления ProductBox и установив в нем параметры, которые будут отображаться из модели. Но следующий блок кода показывает необработанное исключение: strUrl не существует в текущем контексте.
Я совершенно новичок в MVC. Можете ли вы помочь мне определить, где пропущена скобка? Вот мой код из пользовательского элемента управления ProductBox.
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<TSRApp.UI.Models.ProductBox>" %>
<%@ Import Namespace="TSRApp.UI.Helpers" %>
<%@ Import Namespace="TSRApp.Contracts.Common.OperationalContracts" %>
<% string strStartTag = "<div class=\"fl book-shaddow\">";
string strEndTag = "</div>";
if (Model.IsFeatured)
{
strStartTag = "<li " + Model.LiID + " >";
strStartTag = strStartTag + "<div class=\"book-shaddow\">";
strEndTag = "</div></li>";
}
if (Model.ProductName.Length > 40)
{
Model.ProductName = Model.ProductName.Substring(0, 37) + " ...";
}
if (string.IsNullOrEmpty(Model.ProductZoomImage))
{
if (!string.IsNullOrEmpty(Model.ProductSmallImage))
{
string strZoomImage = Model.ProductSmallImage.Substring(Model.ProductSmallImage.IndexOf("src=")).Replace("src=\"", "");
strZoomImage = strZoomImage.Substring(0, strZoomImage.IndexOf("\""));
Model.ProductZoomImage = strZoomImage;
}
else
{
Model.ProductZoomImage = Model.ProductSmallImage.Replace("~", "");
}
}
string strURL = string.Empty;
strURL = "/Product/Information/" + Model.ProductCode;
%>
<%= strStartTag %>
<% if(UiHelper.GetDeviceID()!=4)
{
%>
<a href="<%=strUrl %>"></a>
<%
}
%>
<% if (!string.IsNullOrEmpty(Model.ProductSmallImage))
{
%>
<%= Model.ProductSmallImage%>
<%
}
%>
<img src="<%=Model.ProductSmallImage %>" alt="<%= Model.ProductName %>"
style="height: 200px; width: 170px" />
<%= strEndTag %>
Пожалуйста, помогите мне решить эту проблему. Благодарю.
1 ответ
C# чувствителен к регистру. + Изменить <%=strUrl %>
в <%=strURL %>
и тебе должно быть хорошо идти.