I’m experiencing some weird behaviour after moving from Windows XP to Windows 7 on my development machine.
I have a WPF 4 solution created in Visual Studio 2010. In the solution are 3 projects – Common, MyApp and Infrastructure. I’m using Prism 4. The original solution was created on Windows XP, and for various reasons I’m rebuilding it into a new solution. I’ve added Common and MyApp and both build successfully independently. The issue is with Infrastructure.
To rebuild the project I’ve created the project folders and added the existing code files. As I started I tested the build and it was fine to a point. Having entered all the files I now receiving errors like this when trying to build (Resharper suggests all is fine);
The type or namespace name 'Windows' does not exist in the namespace 'Infrastructure.System' (are you missing an assembly reference?) CircularProgressBar.g.cs
The type or namespace name 'Windows' does not exist in the namespace 'Infrastructure.System' (are you missing an assembly reference?) CircularProgressBar.xaml
The type or namespace name 'Delegate' does not exist in the namespace 'Infrastructure.System' (are you missing an assembly reference?) SearchView.g.cs
The type or namespace name 'CodeDom' does not exist in the namespace 'Infrastructure.System' (are you missing an assembly reference?) CircularProgressBar.g.cs
The common theme is that all files listed are XAML related. The Infrastructure project is WPF user controls one, all the xaml files have Build Action of Page.
Now the really weird bit. To try and identify where the issue arose I begun excluding folders from the project one by one. I started with InteractionRequests because I’ve always had hassle here. No change. Then I excluded the next (System) and low and behold the solution builds and displays the main window. So, I started adding them back one by one – for example, if I add UserType back in
namespace Infrastructure.System
{
public enum TypeOfUser
{
User,
Admin
}
public enum TypeOfTrialUser
{
User,
Admin
}
public enum UserAccessStatus
{
Granted,
Revoked
}
}
the errors return. Exclude it again and they’re gone. Same story with other files as well so it’s nothing to do with the file itself (as you’d expect based on what’s in it). When the errors return it still refers to the same list of xaml related files (*.xaml or *.g.cs).
Any ideas? I have to admit I’m completely baffled by this! Something to do with the file permissions maybe? Wits end reached…..
Well I resolved it but I’m not really sure why it was an issue. The key was the namespace Infrastructure.System – renamed this to Infrastructure.Sys, updated the using statements and all builds successfully. Some kind of glitch?