谁遇上过这个超级变态的问题.开发经验丰富的看看(这回高手该来看看我的贴了吧)
错误: 1 设计器文件生成失败: 无法识别表达式前缀“ConnectionStrings”。请更正此前缀或在配置的 <expressionBuilders> 节中注册此前缀。 C:\Company\Company_Show.aspx 1
-----
对应的aspx代码: <asp:SqlDataSource ID="Sqllog" runat="server" ConnectionString="<%$ ConnectionStrings:conn %>"
-------
对应的Web.config
<connectionStrings>
<add name="conn" connectionString="Data Source=127.0.0.1;Initial Catalog=yina;Persist Security Info=True;User ID=sa;Password=5188"
providerName="System.Data.SqlClient" />
</connectionStrings>
------------------------
已知条件:
1、VS2005 WEb应用程序,
2、能正常编译,能正常运行,但会一直接示这个错误(并引发严重的麻烦)
3、今天建的所有文件都有出现此问题,旧的文件有些不出现这提示,重新建一个web应用程序,一样的配置,正常,没错误提示。
4、以上代码由VS自动生成,排除手写错误。
5、COPY新的web.config替换,编译同样出现此错误/
正常编译,但开发过程中会出现超级麻烦:
1、.designer.cs文件不建立对应的控件(就是因为这个错误引起的),.designer.cs中没有对应的控件,在.cs下不出现智能提示,并且无法编译成功。
2、删除.designer.cs后,在aspx上按“转换为web应用程序“,无法生成designer.cs文件,去掉ConnectionString="<%$ ConnectionStrings:conn %> 后可以正常生成。。
总结是这样:
一切都是ConnectionString="<%$ ConnectionStrings:conn %这句问题,但配置是正确的。因为相同的配置做过上千次了,但不知道做过些什么,现在引发出这个问题。出现此问题能正常编译,但再向页面中添加任何控件都不在designer.cs中产生代码(因此在事件里也写不了跟那些控件有关的代码)
------解决方案--------------------UP
------解决方案--------------------是节点大小写问题吗?我看ConnectionString=" <%$ ConnectionStrings:conn % >"
与节点的首字母大小写不一样
<connectionStrings >
<add name="conn" connectionString="Data Source=127.0.0.1;Initial Catalog=yina;Persist Security Info=True;User ID=sa;Password=5188"
providerName="System.Data.SqlClient" / >
</connectionStrings >
------解决方案--------------------good
------解决方案--------------------confing没有错,那你删除bin目录所有文件重新编译下看看.
------解决方案--------------------up
------解决方案--------------------//<%$ ConnectionStrings:conn % >
还可以这样写呀
------解决方案--------------------http://community.csdn.net/IndexPage/SmartQuestion.aspx#bespecific
------解决方案--------------------电脑中招了!!
------解决方案--------------------up