0
votes

I have a project that I've spent over a week on so far (so starting fresh won't really work that well), that includes use of the AJAX Control Toolkit for .Net 4.5.

I have Visual Studio 2012, and I've installed AJAXControlToolkit as a reference via Nuget. I then made a build, and drag/dropped the controls into my Toolbox from the bin folder of that build.

My WebConfig has the reference for the toolkit as well:

<?xml version="1.0"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
    <appSettings/>
    <system.web>
        <compilation debug="true" targetFramework="4.5">
            <assemblies>
                <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
                <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
                <add assembly="AjaxControlToolkit"/>
            </assemblies>
        </compilation>
        <httpRuntime/>
        <pages controlRenderingCompatibilityVersion="4.0">
            <controls>
                <add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" namespace="AjaxControlToolkit"/>
            </controls>
        </pages>
    </system.web>
    <system.webServer>
        <handlers>
            <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit"/>
            <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit"/>
            <remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
            <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0"/>
            <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0"/>
            <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
        </handlers>
    </system.webServer>
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
            <dependentAssembly>
                <assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
                <bindingRedirect oldVersion="0.0.0.0-2.1.0.4" newVersion="2.1.0.4"/>
            </dependentAssembly>
        </assemblyBinding>
    </runtime>
</configuration>

I am building via TFS, to an online destination with Visual Studio Online, but every build results in this set of errors:

17 error(s), 4 warning(s) $/SCEIP/SCEIP.sln - 17 error(s), 4 warning(s) View log file

Errors:

  • Application\step1.aspx.designer.cs (274): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\eligibility.aspx.designer.cs (58): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\eligibility.aspx.designer.cs (148): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\eligibility.aspx.designer.cs (193): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (112): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (148): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (175): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (247): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\eligibility.aspx.designer.cs (103): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (328): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (346): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (400): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (418): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (436): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (454): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • Application\step1.aspx.designer.cs (472): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)
  • SCEIP.Master.designer.cs (40): The type or namespace name 'AjaxControlToolkit' could not be found in the global namespace (are you missing an assembly reference?)

Warnings:

  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (1605): Could not resolve this reference. Could not locate the assembly "AjaxControlToolkit". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (1605): Could not resolve this reference. Could not locate the assembly "AjaxMin". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (1605): Could not resolve this reference. Could not locate the assembly "HtmlAgilityPack". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (1605): Could not resolve this reference. Could not locate the assembly "Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.

My build works locally (of course) just fine, but if I can't publish it, then it's a failure. I've looked all over online, but found nothing that seems to offer any help at all.

1
After much searching, and finding nothing, a friend of mine steered me to this: robertgreiner.com/2013/09/… Exactly the answer I needed. I ran those steps, and voila - build succeeded!PKD
@Esther Fan - MSFT - While I appreciate the input of a Microsoft employee, please stop making edits to this post. The names are correct for the product in question, as that was the name of the product while I was using it. The name now is not what this question was about, and I'm hopeful that in whatever the newest version of this product is, these issues still don't exist.PKD
Apologies for any offense. Only trying to help users find answers who don't know the legacy name.Esther Fan - MSFT

1 Answers

1
votes

With NuGet, you can rely on package restore in the build process to ensure your dependencies are loaded. There's no need to check the packages folder into source control.

As mentioned in the comment, there's a blog post explaining the fix for this particular scenario.

There's also documentation on the official NuGet site explaining how to configure projects with package restore and Team Build