Exception: "There was a failure executing the response(receive) pipeline" - biztalk

In the BizTalk Console Administration I often see exceptions like the following:
There was a failure executing the response(receive) pipeline: "[pipelineName], [BizTalk projectName], Version=1.0.0.0, Culture=neutral, PublicKeyToken=35805574d24305bf" Source: "Unknown " Send Port: "[sendPortName]" URI: "[sqlServerConnString]" Reason: Failed to get pipeline: [pipelineName], [BizTalk projectName], Version=1.0.0.0, Culture=neutral, PublicKeyToken=35805574d24305bf. Please verify that the pipeline strong name is correct and that the pipeline assembly is in the GAC.
I think the problem is how I deployed the pipeline and the project because I have developed my solution on a Virtual Machine (that have Visual Studio) and then I deployed my solution on another Virtual Machine (that does not have Visual Studio installed).
For the deploy I put the dll needed in a folder and then I added them from BizTalk Administration tool (Resources). Another strange thing I noticed is that in Resources I have:
[pipelineName], Version=1.0.0.0, Culture=netrual, PublicKeyToken=60cf10bb1a125a7
[BizTalk projectName], Version=1.0.0.0, Culture=netrual, PublicKeyToken=35805574d24305bf
I have no idea how to solve this issue. Can you help me?

Please check:
pipelineName is a pipeline inside the project (and the DLL)
[BizTalk projectName], Version=1.0.0.0, Culture=netrual, PublicKeyToken=35805574d24305bf
Your DLL have to be in the GAC, please check that the DLL is in the GAC, If not, add the DLL from BizTalk Administration tool (Resources) with "Add to the global assembly cache on add resource (gacutil)" option checked.
On resources you only need this:
[BizTalk projectName], Version=1.0.0.0, Culture=netrual, PublicKeyToken=35805574d24305bf
The other one ([pipelineName], Version=1.0.0.0, Culture=netrual, PublicKeyToken=60cf10bb1a125a7) is another DLL that you added to this BizTalk application.

You have to properly deploy the Pipeline Component Assembly.
This article explains the entire process: BizTalk Server: Deploying Custom Pipeline Components in BizTalk Server 2006 and Higher

I had to restart the associated hosts and the standard BizTalkServerApplication host to refresh the in-memory data.

Related

Could not load file or assembly Microsoft.VisualStudio.DevOps.Contract

I'm trying to publish a .NET Core (3.1) Web Application for the first time in Visual Studio 2019 and I get the error:
System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.DevOps.Contract, Version=15.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The module was expected to contain an assembly manifest.
File name: 'Microsoft.VisualStudio.DevOps.Contract, Version=15.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.DevOps.Contract, Version=15.3.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The module was expected to contain an assembly manifest.
File name: 'Microsoft.VisualStudio.DevOps.Contract, Version=15.3.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
at Microsoft.Publish.Framework.ViewModel.ProfileSelectorViewModel.FetchContinuousDeliveryService()
at Microsoft.Publish.Framework.ViewModel.ProfileSelectorViewModel.InitializeContinuousDelivery()
at Microsoft.Publish.Framework.ViewModel.ProfileSelectorViewModel..ctor(IThreadSwitcher threadSwitcher, IPublishServiceProvider serviceProvider, IVsHierarchy hierarchy, ITelemetryProvider telemetryProvider, IVsWrappersFactory vsWrappersFactory, IReadOnlyList`1 providers, IFeatureManager featureDetectionManager, IProfileController profileController, IDependenciesManagerProvider dependenciesManagerProvider)
at Microsoft.Publish.Framework.Provider.DefaultPublishTabProvider.CreateViewAsync(IVsHierarchy project, IAsyncServiceProvider serviceProvider, CancellationToken cancellationToken)
at Microsoft.Publish.Framework.Provider.PublishProjectDesignerTabProvider.<CreateViewAsync>d__7.MoveNext()
The publish window seems to not be fully drawn out in VS 2019 afterward. Any ideas out there?
I've found an answer to this issue and I'm posting it here. I reinstalled VS2019. I may have missed installing key components during original installation, such as Azure, I'm uncertain on that detail.

Core Application (Targeting .NET Framework) - IIS Publish Error "Could not load file or assembly System.Runtime"

I'm trying to port over an application I wrote in .NET Core to .NET Core (Targeting .NET Framework), due to the inability to impersonate in Core [from my previous SO].
I created the application and ported over all my Views, Controller, and Models, and implemented the WebClient like I needed to. It runs perfectly fine on my IIS Express locally, but when I publish to IIS I get the error:
FileLoadException: Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
There are several StackOverflow threads and solutions, but they're all designed for .NET Core 1.0.1 with the project.json setup, and they don't translate well to csproj. Has anyone encountered this error before?
Full stack trace:
System.IO.FileLoadException: Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
at TIM.MVC.NET.Startup.ConfigureServices(IServiceCollection services)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Microsoft.AspNetCore.Hosting.ConventionBasedStartup.ConfigureServices(IServiceCollection services)
at Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureApplicationServices()
at Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()
I have tried setting my Application Pool to both No Managed Code and CLR 4.0, neither has any impact on the error that appears. I also tried running
Install-Packem System.Runtime
and that didn't do anything. I can see the System.Runtime.dll file in the ref folder on the server where IIS is hosted, and like I said it works when I run the application in debug with no issues. Thoughts?

ASP 5 MVC 6 (RC1) - Web API with EF 6 works locally but not deployed

I have a Web API I created in ASP 5 MVC 6 (FULL CLR). The web API references a standard .net class library, which has the entity framework 6 NUGET package installed. If I launch the web api locally (IIS express) and then try to run a method which contacts the database, everything works fine.
When I deploy the web API (I set it up in IIS), using the "Publish" command, to my DEV server (Windows Server 2012) and try to contact the same method, but on the server, I get the following exception (any other method that doesn't touch the database works):
{
"$id":"1",
"ClassName":"System.IO.FileNotFoundException",
"Message":"Could not load file or assembly 'EntityFramework,
Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
or one of its dependencies. The system cannot find the file specified.",
"Data":null,
"InnerException":null,
"HelpURL":null,
"StackTraceString":"
at CMAllocation.Web.Data.InvestorRulesRepository..ctor()\r\n
at CMAllocation.Web.CMAllocationWebApi.Controllers
.InvestorRulesController.GetInvestors()
in E:\\CMAllocation\\WebServices\\CMAllocationWebApi
\\Debug\\approot\\src\\CMAllocation.Web.CMAllocationWebApi
\\Controllers\\InvestorRulesController.cs:line 45",
"RemoteStackTraceString":null,
"RemoteStackIndex":0,
"ExceptionMethod":
"1\n.ctor\nCMAllocation.Web.Data, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null\nCMAllocation.Web.Data.InvestorRulesRepository\nVoid .ctor()",
"HResult":-2147024894,
"Source":"CMAllocation.Web.Data",
"WatsonBuckets":null,
"FileNotFound_FileName": "EntityFramework, Version=6.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089",
"FileNotFound_FusionLog":
"WRN: Assembly binding logging is turned OFF.\r\n
To enable assembly bind failure logging, set the registry value
[HKLM\\Software\\Microsoft\\Fusion!EnableLog] (DWORD) to 1.\r\n
Note: There is some performance penalty associated with
assembly bind failure logging.\r\n
To turn this feature off, remove the registry value
[HKLM\\Software\\Microsoft\\Fusion!EnableLog].\r\n"
}
Any help would be appreciated.
UPDATE I can clearly see the EF 6 dll's in the approot/packages folder:
Your server is missing 'EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.
Build on the server with msbuild.
Run NuGet restore. Dave Ebbo has a good article. It is nuget restore from the cmd line.
If that doesn't work, install the EntityFramework package into the GAC on your server.

Bin deployed DLLs priority over GAC'd DLL's for Web app?

I am having a problem where an older GAC'd assembly is being used instead of a newer version assembly in the bin.
Server:
Assembly version: ASP.NET MVC 3 RC 1 (3.0.11029.0)
Full name: System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Code base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Web.Mvc/v4.0_3.0.0.0__31bf3856ad364e35/System.Web.Mvc.dll
Deployment: GAC-deployed
Development machine:
Assembly version: Unknown version (3.0.20105.0)
Full name: System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Code base: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Web.Mvc/v4.0_3.0.0.0__31bf3856ad364e35/System.Web.Mvc.dll
Deployment: GAC-deployed
The newer RTM version (3.0.20105.0) is in the bin directory of the application. However, the application is using the one in the GAC instead of the local bin. My experience from windows applications is the local bin deployed DLL always takes precedence because the GAC is checked only if the DLL isn't found in the same directory as the application. This convention appears to not be the case for a web application.
How can I force it to use my newer version bin deployed DLL (3.0.20105.0)?
Edit:
I actually did try a binding redirect like so:
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="3.0.11029.0" newVersion="3.0.20105.0" />
I tried several variations on the oldversion such as 0.0.0.0-4.0.0.0. In all my attempts usually it either loaded the older version, or gave me this exception message:
Could not load file or assembly 'System.Web.Mvc' or one of its dependencies.
The located assembly's manifest definition does not match the assembly reference.
The binding log didn't have any errors except this was last two lines:
WRN: Comparing the assembly name resulted in the mismatch: Build Number
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.
Answered is SO Dll in both the bin and the gac, which one gets used? Note, you must run strong name hijack or it will use the GAC version.
I would retag this, it is not MVC specific.
You can modify your .config files to use assembly binding redirection for this and force the runtime to load different versions as you require.

windows azure cspack error The system ca nnot find the file specified. File name: 'Microsoft.ServiceHosting.Tools.MSBuildTask

Hello I am trying to package an azure cloud solution on a windows 2008 server machine from the commandline using cspack.exe, the azur packaging tool basically crashes with the error message below
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or ass
embly 'Microsoft.ServiceHosting.Tools.MSBuildTasks, Version=1.0.0.0, Culture=neu
tral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system ca
nnot find the file specified.
File name: 'Microsoft.ServiceHosting.Tools.MSBuildTasks, Version=1.0.0.0, Cultur
e=neutral, PublicKeyToken=31bf3856ad364e35'
at Microsoft.ServiceHosting.Tools.Packaging.Program.Main(String[] args)
The assembly Microsoft.ServiceHosting.Tools.MSBuildTasks is at the location C:\Program Files (x86)\MSBuild\Microsoft\Cloud Service\1.0\Visual Studio 10.0, so Im not sure why it is not being found
Any help would be appreciated
I fixed this eventually by locating the assemblies and installing them in the gac, these assemblies are part of the azure sdk and i would have thought that they would be installed in the gac by default

Resources