Come utilizzare facilmente complessi HTML “modelli” da stilista in un controllo utente libreria in ASP.NET (VB.NET)
-
22-08-2019 - |
Domanda
Ho qualche HTML che ho ricevuto da un designer, da strega ho fatto un "modello" in un controllo utente Web Ascx su come qui di seguito. Ora vorrei metterlo in una libreria.
Come posso fare questo in modo piacevole (senza concatenazione di stringhe, ecc.)
(Ci dovrebbe essere più parametri)
<div style="clear:both;margin-top:50px;"></div>
<div>
<div class="title"><a href="http://<%=ArticleURL%>"><%=Title%></a></div>
<div class="picto"></div>
<div class="article"><%=Trailer%></div>
<div style="clear:both;"></div>
<div>
<ul class="comments_box">
<li><img src="site_images/picto_comments.png" alt="" width="14" height="14" border="0"></li>
<li class="comments"><a href="">22 Comments</a></li>
<li><img src="site_images/picto_arrow.png" alt="" width="15" height="16" border="0"></li>
<li class="arrow"><a href="">Share</a></li>
<li><img src="site_images/picto_photo.png" alt="" width="20" height="20" border="0"></li>
<li class="login"><a href=""><%=Nickname%></a></li>
<li class="time">59 min ago</li>
</ul>
</div>
</div>
Soluzione
Hai guardato in letterali XML? È possibile creare il modello HTML in questo modo:
Public Function GetTemplate() As String
Dim template As String = _
<string>
<div style='clear:both;margin-top:50px;'></div>
<div>
<div class='title'><a href=<%= Me.ArticleURL %>><%= Me.Title %></a></div>
<div class='picto'></div>
<div class='article'><%= Me.Trailer %></div>
<div style='clear:both;'></div>
<div>
<ul class='comments_box'>
<li><img src='site_images/picto_comments.png' alt='' width='14' height='14' border='0'/></li>
<li class='comments'><a href=''>22 Comments</a></li>
<li><img src='site_images/picto_arrow.png' alt='' width='15' height='16' border='0'/></li>
<li class='arrow'><a href=''>Share</a></li>
<li><img src='site_images/picto_photo.png' alt='' width='20' height='20' border='0'/></li>
<li class='login'><a href=''><%= Me.Nickname %></a></li>
<li class='time'>59 min ago</li>
</ul>
</div>
</div>
</string>.Value
Return template
End Function
I tuoi "gettoni" come <% = Me.ArticleURL%> può essere variabili locali, proprietà, funzioni, etc ...
Per ulteriori informazioni su letterali XML e linqToXml controllare questi siti:
http://www.ookii.org/post/xml_literals_in_visual_basic_9.aspx
http : //blogs.msdn.com/bethmassi/archive/2007/10/16/getting-started-with-linq-to-xml.aspx
UPDATE: letterali XML funzionano solo in VB.NET. Se si utilizza C #, si può sempre avere un'altra assemblea in VB dove si tengono tutti i letterali XML. Grazie per segnalarlo Keltex
Spero che questo aiuti,
D.