CSDN-CSDN社区-.NET技术-C#

收藏 母版页和内容页的变量同名问题[问题点数:50,结帖人:mooncat2000]

  • mooncat2000
  • (三脚猫)
  • 等 级:
  • 结帖率:
楼主发表于:2009-01-09 19:57:14
如果母版页和内容页中有空间ID 同名

或者 母版页和内容页后面的.cs文件中
有 页类的成员变量 名字一样,会有问题么?为什么?

能不能解释下原理,多谢高手指导

回复次数:8
#1楼 得分:0回复于:2009-01-09 20:07:39
命名空间可以相同!类中变量相同就会有问题了!
  • vrhero用户头像
  • vrhero
  • (吾以吾学知吾所学之浅也...)
  • 等 级:
#2楼 得分:30回复于:2009-01-09 20:24:15
  • hubofly用户头像
  • hubofly
  • (幸福瞬间)
  • 等 级:
#3楼 得分:20回复于:2009-01-09 20:24:36
  • vrhero用户头像
  • vrhero
  • (吾以吾学知吾所学之浅也...)
  • 等 级:
#4楼 得分:0回复于:2009-01-09 20:26:10
有一种情况会有这种问题,就是html标记id...服务器控件不可能有名称冲突...
#5楼 得分:0回复于:2009-01-09 20:41:37
不会冲突的,两个的作用域不一样..
#6楼 得分:0回复于:2009-01-09 21:00:31
两个类,咋同名??
#7楼 得分:0回复于:2009-01-09 21:03:05
不会 如果是html控件 可能不行
#8楼 得分:0回复于:2009-03-19 16:08:37
子页的html控件可以和母版页中的html控件名称冲突,好像没有太好的解决办法。
最简单的办法是对page所继承的父类进行封装,重载render方法,然后获取将要输出的到页面的html文本,根据适当的正则过滤出“真正的html控件”(这个时候,服务器控件也已经被转换成适当规则的html标签了,所以对命名规则要有个严格的约束,但是这正做会有效率问题,尤其是页面很复杂的时候),进行预定义的命名转换。这是全局性的,可以从根本上解决这个问题。除此之外就只能是复杂的命名约束了,但是这样的可读性以及可伸缩性(比如页面重命名,或者移动路径)就会产生很大的负面影响。其实只要有这个思路了,具体的代码就很简单了,只是构建正则稍微复杂一点而已