关于.net 3.5和4.0的一个小差异引起的问题

使用vs2010编写一个使用Sharpmap的程序时,遇到一个奇怪现象,运行时网页中出现了如下代码:

 
  
  1. <style type="text/css"> 
  2.     .ctl00_NavigationMenu_0 { background-color:white;visibility:hidden;display:none;position:absolute;left:0px;top:0px; }  
  3.     .ctl00_NavigationMenu_1 { text-decoration:none; }  
  4.     .ctl00_NavigationMenu_2 {  }  
  5. </style> 

这些代码的出现导致引用的外部CSS文件失效,结果菜单的样式都没了,成了并排在一起的样子。这些代码并非源文件中的代码,而是运行时自动产生的。经过搜索发现是因为使用Sharpmap而在Web.config中加入的一句配置造成的影响。

 
  
  1. <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/> 

把其中的3.5修改为4.0即可解决问题。