Visual Studio 2010错误?设计器文件中的命名空间错误

nor*_*isk 4 c# asp.net visual-studio-2010

编辑aspx或ascx文件时,我的Visual Studio 2010 Professional已经开始生成错误的设计器文件.Visual Studio决定对aspx/ascx文件中的所有控件使用System.Web.UI.DataVisualization.Charting命名空间.

例:

<asp:DropDownList ID="test" runat="server" />

最终成为设计器文件中的这个:

protected global::System.Web.UI.DataVisualization.Charting.DropDownList test;

还有其他人经历过这个吗?

nor*_*isk 6

看来Visual Studio无法根据已注册的控件选择正确的命名空间.

我通过将图表注册移动到列表顶部来解决此问题.这导致设计器文件再次正确生成.asp:Chart控件的命名空间也是正确的.

所以我在web.config中的控件部分已经从这个:

<pages>
    <controls>
        <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    </controls>
</pages>
Run Code Online (Sandbox Code Playgroud)

对此:

<pages>
    <controls>
        <add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    </controls>
</pages>
Run Code Online (Sandbox Code Playgroud)

我仍然认为VS中存在导致此行为的错误.