ASP.Net Core 2.1 - Reading TagHelper's parent attribute from child TagHelper
我想知道是否可以从 ASP.Net Core 2.1/2.2 版中的子 TagHelper 元素访问父 TagHelper 的属性。
我正在寻找是否有可能存在子-父 TagHelper 关系,其中子可以以某种方式访问??父属性之一(两个 TagHelper 都是自定义 TagHelper)。为了清楚起见,我有一段代码如下所示:
1 2 3 4 5 | <radio-group> <radio asp-name="radio2" asp-value="one">Some text 1!</radio> <radio asp-name="radio2" asp-value="two">Some text 2!</radio> <radio asp-name="radio2" asp-value="three">Some text 3!</radio> </radio-group> |
本质上,它只是一个标记为 radio-group 的单个元素内的表单上的一组单选按钮(这后来成为具有单个类的 div 元素,而其他单选元素成为 type="radio")。由于所有这些单选按钮在其组内共享相同的名称,因此我必须为每个按钮分配相同的名称。
现在,是否可以在 radio-group 元素上声明单个属性(例如 asp-child-name 属性),然后可以从子元素访问该属性,这样我就不必分配 asp-name 属性给每个孩子?
如果有人偶然发现这一点,我想出了一个解决我的问题的方法。我不知道 TagHelper Process 的上下文属性的用途。我可以使用 context.Items.Add 方法轻松分配键-对象对,然后使用 context.Items.TryGetValue 方法从子 TagHelper 获取该对象值。