Recreating a solution - c#

I'm trying to recreate a solution that had multiple projects in it (only the cs, aspx, etc, remain). When I create a blank solution and blank project files and start re-adding things, I receive the following compiler errors numerous times:
The type or namespace name 'Activation' could not be found (are you missing a using directive or an assembly reference?)
The Activation class is defined in a Activation.cs file that is in a sub folder to the cs file that is using it. I've added and included the files in the project...
The website currently works in production as is, so I'm wondering what type of reference I need...
The following is the structure
Solution
Project1
FileUsingActivation.cs
Folder1
Activation.cs (which contains the class being used in FileUsingActivation.cs that the compiler is complaining about
Edit 1: Just a note that Visual Studio can't resolve the class name, meaning it currently has a squiggly line under the class1 : Activation (Activation portion). But the file is definately included in the project, it's just under another sub folder... I mean I know it won't compile because VS can't resolve the name, but I'm wondering why....
Edit 2: If I add the file to the root of the project, the class name highlights blue, the squiggly goes away as does the error.... so I can't keep the existing folder structure in the project for some reason????

long shot: check for compiler conditionals (like #if some_condition/.../#endif);
Your build configurations might have contained them.
Also, check that the build action is 'compile' for the build configuration that you're trying to build.
Build configurations: MSDN
Conditional Compilation: MSDN

Could be a few things, but given your context...
Are you using .NET 4/VS 2010? The default "Target Framework" for projects is .NET Framework 4 Client Profile, but if you are referencing another project that is the full .NET Framework 4 you'll get this un-informative build error.
To fix this, right-click on your project, click "Properties", and under the "Application" tab set the target framework to .NET Framework 4 (and not .NET Framework 4 Client Profile).
EDIT: For anyone else who stumbles on this question/answer, the above solution will work for you if your classes appear to be included/working while editing (highlighted light blue, etc), and you can right-click "Go-to Definition" for it, but then it gives build errors as if it could not be resolved.

Related

The type or namespace name 'Membership' does not exist in the namespace 'Microsoft.AspNet'

I'm trying to maintain an application that contains the following line in several different files:
using Microsoft.AspNet.Membership.OpenAuth;
I've tried everything I could find. Removed and re-added the reference; cleared the MEF cache and rebuilt; added a different file as a reference. Nothing works. It's bizarre because VS2017 doesn't report this error in the Error List window, but it does show up in the Output window. Anyway, can someone please suggest a possible solution that maybe I haven't tried yet? Thanks.
I was able to compile the project and I will describe how I got it.
1 - I delete all using Microsoft.AspNet.Membership.OpenAuth; and build project.
2 - After build the code show many errors I use the resource of VS2015 help fixes errors on code Show potential fixes and set again using Microsoft.AspNet.Membership.OpenAuth; build project.
3 - Set a new framework 4.6 and build project.
https://drive.google.com/open?id=0B4aywYtmwk6lT1dDNnIxRmtQcUk

VS 2015 CS0234 False Error

Other Resources Checked/ Ideas tried
Don't understand why we're getting error CS0234
Type or namespace name does not exist
Cleaning the solution then rebuilding.
Removing the obj and bin folders completely for both projects.
Setup
Visual Studio 2015 update 3
.net 4.5
I currently have a solution with 2 projects. 1 project has a direct reference to the other project, they are both .net 4.5. For simplicity, I will call the project that is being referenced 'A', and the project that is referencing A - 'B'.
While developing in B I have full IntelliSense on classes within A. As soon as I build the solution, project A builds successfully, but project B has several errors as such:
The type or namespace name 'x' does not exist in the namespace
'projectName' (are you missing an assembly reference?)
When I double click the error to navigate to the file I see the error on the 'using' statement for about 1 second, then it disappears along with the error from the error list. I can continue clicking through the entire error list until the error list is empty, but as soon as I rebuild the errors reappear.
Any help would be greatly appreciated.
Verify if project B is referencing other dll files that use a higher Framework version than 4.5, also, I have experienced this problem due to some Nuget packages that had to be added in every project that referenced the original one using the package.
Try taking a look at your Project Dependencies. To do this:
Right Click on your Solution and select Properties
Then on the left side of the screen select 'Project Dependencies'
Make sure that Project 'B' depends on Project 'A'.
This will assure that the projects are being built in the correct order. It should already be set this way, but sometimes Visual Studio doesn't set the dependencies up correctly.
Also, make sure that you don't have any references to Project 'A' in Project 'B'. That would create a circular dependency and give you no end of grief.
do you have a file reference or a project reference. If its a file reference (ie you pointed at the output dll of project A) then you need to ensure that the project dependencies say that B depends on A so that they get built in the correct order

Entity Framework 4 issue

Using .NET Web API (.NET 4, EF 4) and I'm getting some strange errors when debugging and really can't figure what is going on.
Say in the DocumentRepository I have this constructor:
public DocumentRepository(DocPortalContext db)
{
this._db = db;
}
If I debug and hover over _db and drill into the items in the popup window I'm coming across the following errors:
System.Data.Entity.Infrastructure.IObjectContextAdapter.ObjectContext = 'System.Data.Entity.DbContext' does not contain a definition for 'System' and no extension method 'System' accepting a first argument of type 'System.Data.Entity.DbContext' could be found (are you missing a using directive or an assembly reference?)
and
System.Collections.Generic.ICollection>.IsReadOnly = 'System.Collections.Generic.Dictionary' does not contain a definition for 'System' and no extension method 'System' accepting a first argument of type 'System.Collections.Generic.Dictionary
No exceptions are being caught.
If I put a break point on this line in a repository method - return _db.Documents.AsQueryable(); - and hover over Document I get the following error:
System.Linq.IQueryable.Provider = 'System.Data.Entity.Infrastructure.DbQuery' does not contain a definition for 'System' and no extension method 'System' accepting a first argument of type 'System.Data.Entity.Infrastructure.DbQuery' could be f...
Some help would be much appreciated.
Additional information:
Drilling into _db in the following way gives message quoted at the end:
base(System.Data.Entity.DbContext) -> Internal Context -> _appConfig -> and finally Default Connection Factory has the following error beside it "The function evaluated requires all threads to run."
More information as per my comment:
This isn't really related to the question, but it has me thinking there could be something wrong with my install of .NET or VS - I don't know enough about the pipework to make that call, maybe one of you can. Anyway, I can browse to a URI in my WebAPI project and get JSON returned in the browser. When I try to consume the URI in my Website project, I get this in my browser: Could not find file 'C:\Program Files (x86)\IIS Express\System.Net.Http.StreamContent'. which is also caught as an exception.
By default EF 4 generates proxy classes on the fly that inherit from your POCO classes or your model first classes. That is most likely why you get these errors on runtime. The odd things is that all required usings should be included.
Are you sure you reference System in your POCO classes (presuming you have POCO classes)?
Do all projects in your solution have the same .NET version setup in project's properties?
Do those versions agree with the version on the MSDN describing the missing classes?
Try registering your entity-framework dll and sql-server dll in global assembly cache using gacutil.exe from visual studio command prompt
I had come across this issue recently on a small sample application where we just included nuget packages and created some data layer objects. This is what we did and it solved the issue
Make sure temp folders for .net are clean . usually in asp.net temporary files in windows directory.
Make sure your visual studio is upto date and not requiring a restart due to nuget reinstall. Not sure if it solved or did help but i checked this as well and restarted vs.
Clean the projects and made sure that dlls are present. if you are using some webmatrix dll for asp.net simple membership make sure you have selected to copy it locally. This was one issue when we were seeding data for roles and members for mvc4 simple membership use but may not be the case for your project.
We also checked that in web projects the configuration for ef corresponds to proper version of ef.
Build the solution and run it after a vs 2012 restart and it worked fine. Now I dont know exactly which of these things helped in resolving this issue but doing all 4 worked in one case.
Just thought to share if it helps.
These look like issues relating to an incompatibility between your project's target .Net version and the build version of the assembly you're referencing.
In this instance, you should make sure that the assembly you are referencing is less than or equal to your project's target .Net Framework version.
I have seen this message numerous times. 9 times out of ten, this means that there is a likely problem with the App.config file. Usually, it is just missing. In other words, for every project folder you have referencing the Entity Model you need to place a copy of that App.config file within it. If they are already there, then delete the App.config file that partners the edmx file, and recompile the Entity Model separately to regenerate it. (DON'T DELETE THE EDMX FILE or THE DESIGNER CLASS) Then you have to replace all the App.config's again. Yes, it sucks!!! Sometimes, LinqPad is great for checking this issue too. You can reference the dll file in LinqPad and attempt to run queries giving you the same error message letting you know that the problem is not just Visual Studio.
Hope this helps...Good Luck!!!!
How are you implementing your repository? Seems to me that maybe the problem is that your application is running on a different thread than your repository and that might be the answer for the "The function evaluated requires all threads to run." message.

The referenced project x does not exists

Hej All,
I upgraded my solutions of a project from vs2008 to vs2010.
But right now I have a weird problem. I reference a project in multiple solutions (3 solutions)
In 2 of those solutions the referencing goes wrong.
I am able to add the reference (project reference) but when I build I got the warning the referenced project x does not exists. And errors that I have to add an reference.
I already deleted and added the project again, same with the references but no result.
Does anybody have any idea?
Greetz,
Jonathan
I had the a similar problem and the other solutions didn't help. What worked for me was opening the project file in a text editor. There were duplicate references to a library, one as a project reference and one as a dll reference. I deleted both. Then I opened the solution in Visual Studio, and re-added the reference as a project reference. Only one reference got added and I stopped getting the warning.
Make sure your project is not using the ".NET Framework 4 Client Profile" as target framework, this is the most common source of these problems.
You can check this in the project properties under Target Framework.
From MSDN:
If you are targeting the .NET
Framework 4 Client Profile, you cannot
reference an assembly that is not in
the .NET Framework 4 Client Profile.
Instead you must target the .NET
Framework 4. For more information, see
Troubleshooting .NET Framework
Targeting Errors.
I was experiencing the very same issue although I was correctly referencing .NET 3.5 in all the projects migrated from VS 2008 to VS 2010 (all references to System assemblies were using a runtime version v2.0).
Weird however, the error only occured if my solution (and the projects in this solution's subfolders) were located in certain path... I could "solve" the problem by moving the projects or renaming the projects (only the project file, not the output binaries) ?!
Double clicking the reference in the project opened correctly the Object Browser where I could find all the artifacts defined in the referenced project !
I did start to delete everything from the project (classes, resources, references, etc...). At the end, I had only two projects (A referencing B) without any other references and with only one empty class in each. I still had the message "referenced project '..\B\B.csproj' does not exist.". Suddenly, trying to copy the source to another PC and next back into the original path on my machine (kind of black magic to solve the problem), I did get the message "Cannot copy. Resulting file name is too long".
Wierd² !!! I did delete every thing on my PC and did copy back again the sources from the other PC. It passed successfully ! I did recopy again back from the other PC (overwriting now the existing local copy) and again I got the message "Cannot copy. Resulting file name is too long". So the problem occurred only when overwriting existing files.
I found that the error occurred only if the existing file was "readonly". Removing the flag readonly solved this issue. However, this error was the sign of something possibly at the root cause of my initial issue: "referenced project '..\B\B.csproj' does not exist."
So, I decided to check if the project path length was the issue by renaming one of the folder but not changing the total length! The error still occurred (reference not found).
Next (I knwow, you already think I am crazy or stupid. But all those steps were validated by various colleagues), I did copy the solution in a new folder (with a longer path). Surprise, the error did not occurred anymore !!!
But moving the solution back to a folder with the same length (possibly another name) was reintroducing the error (after a "Clean" of the solution otherwise the meta in obj helped to solved the reference).
I was also able to reproduce this by renaming the project file B instead of a folder in the path. A longer or shorter project filename was solving this issue.
The length of the project filepath is "195" :
D:\TFS_Builds\5\XXXX 1.1\Release 1.11\Sources\Release 1.11\Exception Repository\XXXXXX.Framework.ExceptionHandling.Repository.ServiceHost\XXXXXX.Framework.ExceptionHandling.Repository.ServiceHost
Also, as I can be very creative when trying to identify the root cause of a problem, I did create the very same path on C:\ and put the solution in there... Same error occurred.
I never found (until now) the reason of this and have posted a question on MSDN :http://social.msdn.microsoft.com/Forums/en/msbuild/thread/f0eb6aed-5854-4678-9546-09c1a7705e30
Here is what fixed my problem:
I had a refference to a project named "Utilities.Proxy3.5", which would give me a the following warning:
"The referenced project
'..\..\Utilities.Proxy3.5\Utilities.Proxy3.5.csproj' does not exist."
Renaming the project folder and the project files to "Utilities.Proxy35" and re-adding the reference solved the problem. Note: I have only removed a dot between the numbers 3 and 5.
I hope this will help someone.
I had the same issue.
What solved it for me was that i opened each of the reference projects on its own first. VS asks for a permission to fix some of the files. Allow it to do so.
Then open the top project and it will work.
Apparently it was issues with the version of VS that created the original project.
Good luck
Check the lengths of the following:
The path of the referencing project's directory
The relative path to the project it references
If those paths add up to exactly 259 characters, you will experience a bug in the .NET implementation of Path.GetFullPath that will cause VisualStudio 2010 to behave as if the referenced project does not exist.

.NET - Project Won't Build

I have a WPF/ASP.NET project which I haven't worked on for a while (ResourceBlender.NET - http://resourceblender.codeplex.com/). The project contains a DataLayer and a Core layer, these are both used by the WPF application and ASP.NET project in the solution.
If the WPF project is set as the startup project and I try to build the application, I get "The type or namespace name 'whatever' could not be found (are you missing a using directive or an assembly reference?)".
The error list shows these when I try to build, run or debug, but double clicking and going to the error shows no actual errors in the editor and everything is highlighted as normal.
The ASP.NET project builds fine. I'm absolutely clueless on this one, as there are no obvious errors to fix - could it be metadata somewhere?
Check that all assemblies does not target the 3.5/4.0 Client Profile (It is probably the WPF application that is the culprit). This will cause exactly the error message you're describing.
This type of thing is really hard to debug without being able to see your solution setup, but here are the things I would try:
Expand the references in your WPF project, make sure they are all resolving
Double-check that none of your references have "specific version" set to True and point to an old/nonexistent version
Do a "Clean" on your solution, close VS and delete your bin and obj directories, etc. to clear out potentially old copies of dlls that may be messing up your build
Good luck!
Try the following:
Right-Click on the solution on do a "Clean Solution"
Try to build each project separately
Check the references on your projects for missing assembly references
Compile issues like this can be overwhelming. It's usually best to troubleshoot one project at a time as suggested in these tips:
5 Debugging Tips for a Solution That Won't Compile
Actually read the Output window text.
often errors or warnings that are pertinent appear in there but aren't obvious when following the Error List window links.

Categories

Resources