ASP.NET 5复杂TagHelper

时间:2015-08-09 15:30:55

标签: asp.net-core asp.net-core-mvc tag-helpers

是否可以在ASP.NET 5中构建复杂的taghelper,其中自定义标记具有某种类型的子元素/标记?

<blockSection columns="2" labelPosition="left">
   <inputField for="name" />
   <inputField for="email" required="true"/>
</blockSection>

在上面的例子中,blockSection将是一个只接受inputField标签的TagHelper。

1 个答案:

答案 0 :(得分:3)

如果没有一大堆诡计(自己解析一个标签体或创建一个针对所有事物的TagHelper),你今天不能做到这一点(beta6)。

您可以通过确保<inputField>元素仅显示在<blockSection>代码中来部分解决您的问题(不会限制您将<p>内容放在<blockSection>内)。可以使用context.Items行通知InputFieldTagHelper <blockSection>封装的TagHelper来完成。有关如何在child =&gt;之间进行通信的信息,请参阅this issue。父节点。

如果您愿意等待this Razor issue完成;您可以强制执行var MS : TMemoryStream; GIf: TGIFImage; jpegimg: TJPEGImage; begin MS := TMemoryStream.Create; GIf := TGIFImage.Create; jpegimg := TJPEGImage.Create; /////// try try IdHTTP1.get('http://forum.wmonline.com.br/uploads/av-8929.jpg',MS); Ms.Seek(0,soFromBeginning); //Gif.LoadFromStream(MS); //Logo.Picture.Assign(GIF); jpegimg.LoadFromStream(MS); Logo.Picture.Assign(jpegimg); except ShowMessage('ERRO'); Exit; end; finally FreeAndNil(GIF); FreeAndNil(MS); jpegimg.Free; //// end; 内的标记。

另一个类似的SO issue供参考。