强制ASP.NET 3.5 WebSite使用System.Web.Extensions版本1.0.61025.0

时间:2010-05-17 15:47:31

标签: asp.net web-config

我刚刚将我的网站项目从2.0升级到3.5,以利用TimeZoneInfo类。当我这样做时,我开始收到一个模糊的汇编错误(*见下文)。问题是,我没有使用ScriptManager,旧版本的SyncFusion是。我现在无法升级SyncFusion,因此我需要告诉ASP.NET使用版本1.0.61025.0的程序集。

我从web.config中删除了所有3.5脚本内容并向其添加了bindingRedirects,但它没有用。

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
            <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" />
            <bindingRedirect oldVersion="3.5.0.0" newVersion="1.0.61025.0" />
        </dependentAssembly>
        <dependentAssembly>
            <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35" />
            <bindingRedirect oldVersion="3.5.0.0" newVersion="1.0.61025.0" />
        </dependentAssembly>
    </assemblyBinding>
</runtime>
  

类型'System.Web.UI.ScriptManager'   含糊不清:它可能来自   部件   'C:\的Inetpub \ wwwroot的\ XXX \斌\ System.Web.Extensions.DLL'   或从集会   'C:\ Windows \组件\ GAC_MSIL \ System.Web.Extensions程序\ 3.5.0.0__31bf3856ad364e35 \ System.Web.Extensions.dll'。   请明确指定程序集   在类型名称中。

1 个答案:

答案 0 :(得分:2)

您是否可以在编译元素中更改程序集中的版本?

<compilation debug="true">
    <assemblies>
        <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
    </assemblies>
</compilation>