< 转化为<后保存到数据库,但我现在从数据库读取到TextBox时,我想让它显示为<

abcbsy 2006-06-01 08:59:18
< 转化为<后保存到数据库,但我现在从数据库读取到TextBox时,我想让<它显示为<,有什么好一点的方法没?
...全文
171 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yunxiao_2004 2006-06-02
  • 打赏
  • 举报
回复
设置validateRequest=false 属性,可以解决<> 的问题
<%@ Page language="c#" Codebehind="TaskDealWithV4.aspx.cs" validateRequest=false AutoEventWireup="false" Inherits="UWayPlatForm.Task.TaskDealWithV4" %>

lxmzh21 2006-06-02
  • 打赏
  • 举报
回复
长刀MM 同志的观点已阅,深表同意。一般都是显示的时候才进行数据处理。
celas 2006-06-02
  • 打赏
  • 举报
回复
从我个人设计 Web 程序的经验来看, 最好不要这样保存.

数据库层中的数据应当尽量"原汁原味", 忠实于用户的输入, 保证原始数据的一致性和权威性. 显示到 UI 层的时候才做变换. 否则可能出现的问题:

1. html 的处理过滤比较复杂, 除了尖括号之外还有 &, 单双引号的处理等等, 很可能某段 html 字符串可以在 div 中正常显示, 但到了 textarea 或者 textbox 中就走样了, 这样一来为了正常显示, 你有必要再次过滤, 或者反过滤, 然后存储回数据库的时候又要处理, 经过层层过滤, 步骤一多最后得出来的是什么符号可能超出你的预计.

2. 数据库后台有通用性, 你现在的前台是 .NET, 但以后也可能因为需要改成 JSP, PHP, 更有某些网站是同时运行 PHP 和 ASP.NET 的, 这样一来, 每种语言的 html 过滤以及字符串处理函数都有差异, 你的数据经过 ASP.NET 的 HTML 过滤存放如数据库, 那么 PHP 去读的时候就不一定能正确还原.

综上, 数据库中的字段内尽量保证原始. 就好像你用 notepad 编辑一样, 键盘输入了什么字符, 记事本中也存入什么字符, 而不会把 < 存储为 <
abcbsy 2006-06-02
  • 打赏
  • 举报
回复
受教了,谢谢celas(长刀MM)!
孟子E章 2006-06-01
  • 打赏
  • 举报
回复
Text1.Text = Server.HtmlDecode("<")

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧