Я использую ниже примера кода и имею проблему, куда я не могу передать Запрос. RawUrl оценивают в объект, который расширяет Объект управления (класс Тест ниже).
Когда я использую строку:
<Test1:Test runat="server" ID="testControl" Target="<%# Request.RawUrl %>"></Test1:Test>
Я нахожу, что свойство Target никогда не называют.
Если я использую эту строку вместо этого:
<Test1:Test runat="server" ID="testControl" Target="<%# Request.RawUrl %> test"></Test1:Test>
строковое значение "<%# Request.RawUrl %> test"
передается свойству Target.
Если я использую эту строку, как объяснено во многих, размещает в Интернете:
<Test1:Test runat="server" ID="testControl" Target="<%= Request.RawUrl %>"></Test1:Test>
строковое значение "<%= Request.RawUrl %>"
передается свойству Target.
Я должен получить значение Запроса. RawUrl передал Целевому Свойству моего Тестового объекта управления. У кого-либо есть какие-либо идеи, где я иду не так, как надо?
Управление:
namespace Testing
{
public class Test : Control
{
public Test()
{
}
private string target;
public string Target
{
get { return target; }
set { target = value; }
}
}
}
Пользовательский элемент управления:
<%@ Control Language="C#" Debug="true" %>
<%@ Register TagPrefix="Test1" Assembly="Test" Namespace="Testing" %>
<Test1:Test runat="server" ID="testControl" Target="<%# Request.RawUrl %>"></Test1:Test>
Вам нужно вызвать testControl.DataBind () в коде. <% # устанавливается при вызове DataBind (). <% = эквивалентно Response.Write ().