Solved

Reference to Microsoft.SharePoint.Publishing not working (GAC issue?)

Posted on 2009-03-31
3
3,308 Views
Last Modified: 2012-05-06
In a WebPart that I am creating I load a User Control using LoadControl() -- this User Control makes use of some of the objects defined in Microsoft.SharePoint.Publishing. However...

After loading the control using LoadControl() (with the reference):
The type or namespace name 'Publishing' does not exist in the namespace 'Microsoft.SharePoint' (are you missing an assembly reference?)

The first time I saw this error I knew immediately that I had forgotten to include the reference in my wrapper web part. After including it & rebuilding/deploying I still got this error. I then decided to try and manually copy my solution to the GAC (with the reference). The following is what resulted:

Exception When Trying To Copy My Solution To GAC (using wspbuilder):
System.BadImageFormatException: The module was expected to contain an assembly manifest (Exception from HRESULT: 0x80131018)
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
at System.GACManagedAccess.AssemblyCache.InstallAssembly(String assemblyPath, InstallReference reference, AssemblyCommitFlag flags)
...

If I remove the assembly reference to Microsoft.Sharepoint.Publishing I can copy to the GAC with NO problem . What could be causing this? Is my dll corrupt? If it is how do I repair/replace it? Is there a way to include the reference in my user control? Am I missing something obvious? I am at a loss here.

I've tried changing the targets to x86 and x64, but currently it's on Any CPU. The workstation is a 64bit machine running x64 MOSS.

Note: One thing I have noticed is that the Publishing DLL a different solution is referencing is not located in the GAC and has a modified/create date of about 6 months prior to the version in the GAC. They both have the same version numbers and are exactly the same size, however. I have tried referencing this DLL instead of the GAC'd one, but with no luck or even a different outcome.
0
Comment
Question by:dicksmithauto
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 10

Accepted Solution

by:
Jason Evans earned 250 total points
ID: 24031459
Hi there.
From experience, when I've referenced the Microsoft.SharEPoint.Publishing DLL, I usually reference it from here:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\isapi
I've never referenced this DLL in the GAC. You could try using the DLL from this location instead.
Cheers.
Jas.
0
 

Expert Comment

by:EIT-Midmark
ID: 24861991
That worked for me.  Thanks for the information.
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Last week I faced a strange issue recently, i have deployed SharePoint 2003 servers for one project and one of the requirements was to open SharePoint site from same server. when i was trying to open site from the same server i was getting authentic…
A recent project that involved parsing Tableau Desktop and Server log files to extract reusable user queries for use in other systems. I chose to use PowerShell to gather the data, and SharePoint to present it...
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.

615 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question