Skip to main content

dll reference missing or XML namespace error–when using TFS

I don’t have a proper title for this blog post. But hopefully it helps someone when they google it.
When you use TFS for your development you may get weird compile errors where c# code can not be referenced. Namespace error.
Or visual studio projects won’t open because of XML namespace issue.
below is the error you get if you are trying to Edit a visual studio analysis project from the AOT.
The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the MSBuild 2003 format, please add xmlns="" to the <Project> element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MSBuild 2003 format.  C:\Users\munib\Documents\TFSAXDaxeam\Andromeda\Trunk\AX\EAM\Visual Studio Projects\Analysis Services Projects\Daxeam\Daxeam.dwproj
I did some digging around and found that the ProjectTypeGUID is blank. A GUID is not assigned to it.
Each of the visual studio AOT elements is assigned a GUID depending on what type it is.
With some of the visual studio elements, like c# projects. You can export the xpo, set the property in notepad and then import it.
Some like the Visual Studio Analysis Projects, you wont be able to import the xpo. This just errors out.
So, I wrote a job for this.

static void setAOTPropertyWithOutValidation(Args _args)
    TreeNode    treeNode;   treeNode = TreeNode::findNode(#VSProjectsAnalysisPath + '\\' + 'Daxeam');   if (treeNode)
        treeNode.AOTsetProperties('PROPERTIES\n ' + #PropertyProjectTypeGUID + '  #' + 
                        '{D2ABAB84-BF74-430A-B69E-9DC6D40DDA17}' + '\n ENDPROPERTIES\n');

Final result should be like so. Then all should be fine from here.


I got a Microsoft KB - not a general release. You have to request it.


Gio said…
Hi Munib,
I read your message. is that KB above a hotfix?
Does it fix the build error of XML namespace...?
Are you able to Edit the SSAS project in VS after that error is gone?

Please let me know. Thanks
Munib Ahmed said…
Hi Gio,

The KB is a hotfix.
Yes it does address the issue described.
Gio said…
Thanks Munib. I will talk to MS.

Popular posts from this blog

AX - How to use Map and MapEnumerator

Similar to Set class, Map class allows you to associate one value (the key) with another value. Both the key and value can be any valid X++ type, including objects. The types of the key and the value are specified in the declaration of the map. The way in which maps are implemented means that access to the values is very fast.
Below is a sample code that sets and retrieves values from a map.
static void checkItemNameAliasDuplicate(Args _args) { inventTable inventTable; Map map; MapEnumerator mapEnumerator; NameAlias nameAlias; int counter = 0; ; map = new Map(Types::String, Types::Integer); //store into map while select inventTable { nameAlias = inventTable.NameAlias; if (!map.exists(nameAlias)) { map.insert(nameAlias, 1); } else { map.insert(nameAlias, map.lookup(nameAlias) + 1); } } //retrieve from…

Azure DevOps Release Pipeline–Walkthrough

It is a great start to 2019. Joris from Microsoft has welcomed the year with the release of the Azure DevOps Release Pipeline task on the marketplace. Official blog: Addition blog: I thought I would do a walkthrough for those that haven’t had a chance to play with it yet.
New release pipeline In Azure DevOps, click on the New release pipeline.
You will get an option to select from a template. Just select “Empty Job”. In the first stage, make sure the Agent job is using “Hosted VS 2017”.

In the Agent job click on the + icon to add a task. Select the LCS Asset Upload task. If you don’t see, then you have not installed it. Just select the “Dynamics 365 Unified Operations Tools” link at the bottom. Otherwise, install from here…

Detailed guide on creating Business Events with Azure Service Bus

I have been working with the new Business Events feature released in FinOps and you should read the docs site first.
This blog post focuses primarily on setting up Azure Service Bus endpoint. Setting up the Azure services can be tricky if you are not familiar with Azure Key Vault and application registrations.
I have sequenced the post so that you don't have to jump around. There are four key elements to this: Create the app registrationCreate the service busCreate the key vault secretConfigure FinOps Create an App Registration In the Azure Portal, navigate to the Azure Active Directory menu. Click on App registrations (there is the old one and the preview menu - they are the same but the UI is a bit different). I will show the original App registrations way.

Create a new Web app/API registration and give it a name. It doesn’t really matter in our case what the sign-on url is.

Take note of the Application ID as you will need it later for setting up the Business Event.

Under the Ke…