当前位置 : 主页 > 网络编程 > ASP >

asp.net – repeater或listview vs concatenated html

来源:互联网 收集:自由互联 发布时间:2021-06-24
转换使用串联html的页面花费了不可忽视的时间,比如 string output = "";output +="ul";foreach(MyClass item in MyItems){ output += "li"+item.Name+" - "+item.SomeProperty.ToString()+"/li";}output+="/ul";literalPlaceHolder.Text
转换使用串联html的页面花费了不可忽视的时间,比如

string output = "";
output +="<ul>";
foreach(MyClass item in MyItems)
{
  output += "<li>"+item.Name+" - "+item.SomeProperty.ToString()+"</li>";
}
output+="</ul>";

literalPlaceHolder.Text=output;

为了使用ListView控件,我刚刚发现原始开发人员返回并将页面转换回使用连接的html.我个人的感觉是列表视图和转发器可以提供更清晰,信息更丰富的标记,可以由对C#经验较少的人编辑,并且它们更快,使用更少的内存.至少页面应该使用StringBuilder而不是字符串.任何人都对此有充分的理由吗?当我提起这件事时,我有一种感觉会引起重大冲突.

首先,我认为对于其他开发人员来说,只是替换你的代码并不是很合作,没有讨论.如果你想在这个位置占上风,你肯定必须为你的位置做好准备.

我同意标准的ASP.Net控件对于经验不足的开发人员来说更容易处理,如果这是您所关注的问题.

我不确定我是否同意你关于StringBuilder的信息,因为StringBuilder经常引发争议激烈的争论here和其他地方.如果您的列表不够冗长,那么StringBuilder可能没有足够的理由.

经验丰富的开发人员可能会对这种特定方法感到欣赏的一个方面是,很容易逐步查看每个项目的填充方式.使用ListView并不容易 – 您必须添加一个事件来捕获正在添加的项目,然后在其中放置一个断点.

最后,我鼓励你仔细选择你的战斗.这个特定的例子不是主要的设计问题.如果您预见未来会有其他更大的意见分歧,您可能会决定从一个较小的问题开始,以便与您的开发人员建立解决这类冲突的方法.或者,您可以认为这不是一个足够大的协议来争取,并等待一些重要的事情(我怀疑你将不得不等待很长时间).选择哪种方式取决于所涉及的个性.

网友评论