来自HTML,XML和PHP的世界是使用ASP.NET制作Web应用程序时的一种新思维方式。我想在我的MasterPage中使用以下代码:
<div id="leftnav">
<asp:ContentPlaceHolder ID="leftnav" runat="server">
</asp:ContentPlaceHolder>
</div>
但是,由于此示例中的leftnav
使用了两次,因此Visual Studio会进行一次小规模但值得注意的抗议。在这种情况下我应该怎么想,哪种是在ASP.NET中命名ID的最合适的用法。
我不喜欢默认命名,因为id="ContentPlaceHolder1"
没有提及内容。
感谢您的聆听!
答案 0 :(得分:8)
我会调用div“nav”和占位符“navPlaceholder”。这是因为单词“left”意味着位置,应该由你的css 处理,而不是你的html。如果设计师决定将导航放在右边怎么办?你可以在你的CSS中做到这一点,但你最终会遇到像div #lefnav { float:right; }
这样令人困惑的事情,这是一个微不足道的例子,我知道但要记住一些事情。
答案 1 :(得分:3)
“leftNavPlaceHolder”怎么样?
与您的命名惯例一致:)
答案 2 :(得分:2)
不,默认ID很糟糕。我无法想象它们的用途是什么,只是因为Visual Studio不够聪明,无法提出更好的建议,而且它们并不是在暗示半智能的东西,因为它们不想试图脱落作为他们不是的东西。合理的=)
因此养成总是更改默认ID的习惯。你改变它们的完全取决于你; “leftNavContent”?当涉及到ID时,几乎唯一被大会覆盖的就是大写。
唯一应该真正从纯HTML改变的是你不能使用像“左导航”这样的ID,即包含连字符,用于服务器控件。
答案 3 :(得分:1)
我建议,除非你真的需要,否则不要给div提供id,因为它会影响性能。
答案 4 :(得分:1)
主观。这类问题的明显答案是:选择你喜欢的东西;标准化它,并始终遵循它。
就个人而言,我以下列方式命名我的东西:
<asp:Literal runat="server" ID="ltlDescriptionOfContent" />
或
<asp:PlaceHolder runat="server" ID="plhSendMessage">
</asp:PlaceHolder>
对于包含有关发送消息的信息的区域。但你不必这样做。做你想做的。只是让它保持一致。理想情况下,传达一些关于内在的信息。
答案 5 :(得分:1)
我使用ux
为所有ASP.Net控件添加前缀,表示用户控制。
然后,您可以将String emailAddress = "test@abc.com";
与uxEmailAddress.Text = emailAddress