asp.net - 转发器或 ListView 与连接的 html

标签 asp.net html repeater

在花费大量时间转换使用串联 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。我个人的感觉是, ListView 和重复器有助于更清晰、信息更丰富的标记,这些标记可以由 C# 经验较少的人编辑,而且它们速度更快,占用的内存更少。至少页面应该使用 StringBuilder 而不是字符串。有人对此有很好的论据吗?当我提出这个问题时,我感觉它会引起重大冲突。

最佳答案

我不同意上面的回答。

首先从技术角度来看。 在代码隐藏中使用连接字符串显然是将 View 与您的逻辑混合在一起。如果我要浏览这个应用程序,我会想知道输出 html 是从哪里来的,因为 aspx(或 ascx)是空的。

此外,如果您使用像 Repeater 这样的控件,并且他正在连接 html 代码并将其输出到页面,那么您的应用程序的不同区域之间将没有一致性,并且它将当出现错误或必须添加功能时,知道在哪里查看会变得一团糟。

我建议你直接问他为什么他更喜欢连接 Html。他不事先询问就将您的代码切换回他的工作方式的原因是什么。

我也不同意团队合作的观点。 在团队中,沟通就是一切。没有沟通,你注定会失败。 不要害怕沟通。有问题就要问,要把事情说清楚。你赢或他赢不是重点。重点是相互理解并作为一个团队一起工作,而不是互相对抗

关于asp.net - 转发器或 ListView 与连接的 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1827580/

相关文章:

php - $(this).next() 的问题

c# - 按 C# 中的日期属性或使用 jQuery 拆分列表

repeater - 如何为中继器中的属性创建别名?

asp.net - 为什么下载的文件无法保留在模型弹出窗口中?

c# - 使用母版页清除 ASP.NET 页面中的所有控件

.net - 回发不适用于 aspx 页面作为默认文档

asp.net - SQL 数据源 - 存储过程和返回参数

javascript - 在一页中分别提交两份表格并附上单独的感谢信息

html - 从普通更改为粗体时,CSS 相同的文本自动换行

C# - 遍历 Repeater 控件并访问通过 DataBinder.Eval() 添加的值