Вот фрагмент класса:
public class OneControl
{
...
public OneControl Content(Action value) {
ContentProperty = value;
return this;
}
public void Render()
{
ContentProperty();
}
...
}
Тогда я понял это:
<div id="pleaseHelpMe">
<% OneControlInstance.Content(() => { %>
Some Mixed Stuff <%= Example%> Euros
<% }).Render() %>
</div>
Я хотел бы использовать этот синтаксис в своей библиотеке пользовательского интерфейса, я знаю,как это реализовать, но я не знаю, КАК это на самом деле работает!
Я понимаю, что где-то и в некоторой степени создается делегат и предоставляется в качестве аргумента метода Content, но не могу найти никакой информации об этомМеханизм или техника.
Можете ли вы просветить меня?
PS: Я изменю название в соответствии с полученным ответом.
Предполагаемый текущий правильный ответ :
Компилятор переводит приведенный ниже код aspx в (символический перевод для понимания):
<div id="pleaseHelpMe">
<% OneControlInstance.Content(() => {
ViewPageInstance.Response.Write("Some Mixed Stuff ");
ViewPageInstance.Response.Write(Example);
ViewPageInstance.Response.Write(" Euros");
}).Render() %>
</div>
Большое спасибо Hogan !!