This is a migrated thread and some comments may be shown as answers.

Build DLL from sources for .NET 4

12 Answers 258 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Denis
Top achievements
Rank 1
Denis asked on 18 Feb 2011, 11:50 AM

Hello!

I've downloaded source code for AJAX Controls (Telerik.Web.UI_2010_3_1317_Source.zip). Then I opened it in the VS 2010, switch project target framework to .NET 4 and tried to build solution. But there was an error in file CSDialog.cs:

Error 3 The type or namespace name 'BasicClient' could not be found (are you missing a using directive or an assembly reference?) D:\3rd party\Telerik\dev\Telerik.Web.UI\Editor\DialogControls\CSDialog.cs 160 18 Telerik.Web.UI

How to fix it and build DLL for .NET 4.0?

12 Answers, 1 is accepted

Sort by
0
Rumen
Telerik team
answered on 21 Feb 2011, 02:42 PM
Hi Denis,

You should not switch project target framework to .NET 4. You should choose from the Configuration Manager of Visual Studio 2010 .NET 4 release or debug according to whether you want to build a release or debug assembly. See the following screenshot for more information: http://screencast.com/t/g8PueDFr.

Best regards,
Rumen
the Telerik team
Registration for Q1 2011 What’s New Webinar Week is now open. Mark your calendar for the week starting March 21st and book your seat for a walk through all the exciting stuff we ship with the new release!
0
Roatin Marth
Top achievements
Rank 1
answered on 11 Aug 2011, 07:57 PM
ok well,
i've switched the config manager like you've suggested and i still get an error where this BasicClient class cannot be found....

any ideas?
0
Roatin Marth
Top achievements
Rank 1
answered on 11 Aug 2011, 08:28 PM
I'm not seeing any reference to the BasicClient class anywhere in the telerik source code expect for where it tries to be used in the CSDialog class.
I'm seeing any file define what BasicClient is.

Any help?
0
Roatin Marth
Top achievements
Rank 1
answered on 11 Aug 2011, 08:51 PM
i'm not seeing basic client defined at the source of the web service

http://api.hisoftware.com/Service.svc?wsdl
0
Dobromir
Telerik team
answered on 17 Aug 2011, 09:03 AM
Hi Roatin,

This problem might be caused by the changing the target framework of the project to .NET 4.0. Could you please extract the source code again and follow the instructions from the accompanying Introduction document and see if the problem still occurs?

Regards,
Dobromir
the Telerik team

Browse the vast support resources we have to jump start your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.

0
Brett
Top achievements
Rank 1
answered on 12 May 2015, 09:06 PM
I ran into the same issue here.. the reason seems pretty obvious.. and it has nothing to do with framework targeting.. BasicClient DOES NOT exist at that web referenced service endpoint ... http://api.hisoftware.com/Service.svc 

There is no framework conditional aspect involved here. app config has 

The source code I am using is Q4 2014.. has this issue existed for over 3 years?

I see from other sites that their is/was supposed to be a class named BasicClient that inherits from ClientBase<Base> and implement Base.. but neither Base (interface) nor BasicClient (class) are created from the web reference..
0
Ianko
Telerik team
answered on 15 May 2015, 06:27 AM
Hi Brett,

The BasicClient is a class that serves the logic of CSDialog, which is implemented to use with the hisoftware service and check the HTML compliance (the http://api.hisoftware.com/Service.svc web reference).

I suggest verifying that the references to the System.ServiceModel and System.ServiceModel.Web assemblies are existing, that are correct and that exists in the GAC of your environment. Also, there should be a Web Reference named com.hisoftware.api2 in the Web References folder of the project, make sure that it exists.

Regards,
Ianko
Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
0
Brett
Top achievements
Rank 1
answered on 15 May 2015, 03:53 PM

Ianko, thanks for responding, but your post doesn't seem to properly address the issue I and the original poster - 3 years ago - are describing..

http://api.hisoftware.com/Service.svc is only exposing 1 contract, and that is for BasicService.. BasicClient and Basic (the interface), are not exposed for binding from that service endpoint.. My presumption is that there is supposed to be a contract / binding.. but there isn't..

 

For comparison, please see http://dotnetnukeru.com/dnn6docs/api/html/N_Telerik_Web_UI_com_hisoftware_api2.htm, which is a framework that seemingly uses that web reference, and the generated/binded classes.. my web reference to that svc url, produces the following References

Reference.map file:

<DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Results>
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.DiscoveryDocumentReference" url="http://api.hisoftware.com/Service.svc?disco" filename="Service.disco" />
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://api.hisoftware.com/Service.svc?wsdl" filename="BasicService.wsdl" />
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.SchemaReference" url="http://api.hisoftware.com/Service.svc?xsd=xsd0" filename="Service.xsd" />
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.SchemaReference" url="http://api.hisoftware.com/Service.svc?xsd=xsd1" filename="Service0.xsd" />
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.SchemaReference" url="http://api.hisoftware.com/Service.svc?xsd=xsd2" filename="Service1.xsd" />
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.SchemaReference" url="http://api.hisoftware.com/Service.svc?xsd=xsd3" filename="Service2.xsd" />
    <DiscoveryClientResult referenceType="System.Web.Services.Discovery.SchemaReference" url="http://api.hisoftware.com/Service.svc?xsd=xsd4" filename="Service3.xsd" />
  </Results>
</DiscoveryClientResultsFile>

Note, the project file (from the source) declared the web reference added already, failed to generate BasicClient, updating the web reference failed to generate BasicClient.. removing the web reference and adding it again made no difference.

Regardless of the scenerios the resulting generated class/types (and reference.map file) are/is the same..


Also, You mentioned the assembly in the context of the GAC, but I can only presume you're making an assumption that I'm doing a compiling and deployment scenerio of some sort.. this is a pre-build concern..

 Are you suggesting that the assemblies that Visual Studio uses for adding the web reference to a project (pre-build, IDE-level operation) is the possible root of the issue?.. I don't think that is a like cause, and It is FAR more likely that your service endpoint isn't configured properly; I think the fact that I'm getting I'm getting a contract/class called BasicService exemplifes that..  

0
Ianko
Telerik team
answered on 18 May 2015, 01:55 PM
Hi Brett,

I can never be sure what is the exact issue on your end, as I am able to build the source code on my end without any exceptions thrown. Due to that, I can only suggest what the issue might be.

Examining the exception's description, I can see that the issue is related to a missing assembly. The BasicClient class inherits the ClientBase one, which is exposed in the System.ServiceModel assembly. This is why I suggested you to check if the assembly references are OK, and to verify that these assemblies exist in the GAC. Also, Visual Studio has nothing to with the System assemblies, it is just an SDK. It is the framework installed that controls the assemblies and their version. When opening a VS project, it uses the assembly references that point to certain versions in the GAC. When they are not found, such issues are expected.

Regards,
Ianko
Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
0
Brett
Top achievements
Rank 1
answered on 18 May 2015, 06:58 PM

Ianko, 
   I understand that you're suggesting plausables. Which is why I addressed it as an unlikely possibility at the end of my last post.  I've been pretty detailed on what the issue is, so your unsurity is illogical to me at this point. to reiterate: the web reference isn't generating ClientBase. Thus, what's in the GAC (in a test and deployment scenerio) becomes irrelavant, because it will fail to build.

"Examining the exception's description, I can see that the issue is related to a missing assembly.".. the issue is related to a missing class in the project. if it were a missing assembly our assembly, it would state: "The type or namespace name 'BaseClient' could not be found".. Since there is no BasicClient being generated, there is no snippet that inherits BaseClient in the scope of this issue.. 

the assemblies: System.ServiceModel (as well as System.ServiceModel.Web) exist in both the project reference dependencies and in the GAC. Furthermore, I can inherit from the ClientBase<T> on a new class in this project and in my own. 

I downloaded the most recent Telerik Ajax UI Source (2015_1_401_Source ~ zip), this issue (as expected) persists. The previous version I was using (2014_2_724_Source ~ zip).

With the latest version (and possible the previous one I used) I had to resolve a dependency assembly reference to AWSSDK. Which I did by selecting the reference item, and changing 'Specific Version' in the Properties window ('Reference Properties') to true - it was initially set to false. This, seemingly, satisfied the strong name, specific version dependent assembly that the solution requires.. 

I don't know what source code you're compiling or where you're getting it, but the source code (download resource) being provided is not buildable without these modifications/configurations/settings.. 


Please see the attached image (screenshot) of the failed build and web referenced (opened treenode in solution explorer). This screenshot was take after I set the specific version property of the AWSSDK to true, right clicked on 'com.hisoftware.api2' and selected 'Update Web Reference'.

0
Brett
Top achievements
Rank 1
answered on 18 May 2015, 07:22 PM

Bah.. I meant:

if it were a missing assembly or assembly class/type, it would state:  "The type or namespace name 'ClientBase' could not be found".. Since there is no BasicClient being generated, there is no snippet that inherits ClientBase in the scope of this issue.. 

0
Ianko
Telerik team
answered on 20 May 2015, 06:32 AM
Hello Brett,

I assume the stack trace's last error is the last occurrence of the issue at build-time and/or at run-time, and thus, the exception is thrown for the ClientBase. Also, you can check whether the build action of the folders and the cs files are correct, so to be compiled by the VS build. 

Also, here you are a screencast (http://screencast.com/t/7fQUkI5hj) showing how the building of the source code succeeds on my end.

Regards,
Ianko
Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
Tags
General Discussions
Asked by
Denis
Top achievements
Rank 1
Answers by
Rumen
Telerik team
Roatin Marth
Top achievements
Rank 1
Dobromir
Telerik team
Brett
Top achievements
Rank 1
Ianko
Telerik team
Share this question
or