I think I just figured out the problem I posted below. It turns out that the web service project name can't be longer than 61 characters. Therefore, the assembly's friendly name couldn't exceeds 61 characters for web servie dll. I took the default name
BancOfMercury.CurrencyLaunderingTechnology.DUI.Orchestrations_Proxy
for the web service when I published it from the ws publishing wizard. It's 67 characters and it exceeds this arbitrary limit. I tried to create a dummy web service on my computer with the name
BancOfMercury_CurrencyLaunderingTechnology_DUI_GrabTheMoneySer
which failed to allow me to access it as well. The error reported by the fusion.exe is very deceiving. It pointed me to other directions when I troubleshoot the problem. I thought error is in the assembly probing process. FUSLOGVW says this:
LOG: Post-policy reference:
BancOfMercury.CurrencyLaunderingTechnology.DUI.Orchestrations_Proxy,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
ERR: Setup failed with hr = 0x80131047.
ERR: Failed to complete setup of assembly (hr = 0x80131047).
Probing terminated.
Anyway, I tried another dummy project with name
BancOfMercury_CurrencyLaunderingTechnology_DUI_GrabTheMoneySe
BancOfMercury_CurrencyLaunderingTechnology_DUI_GrabTheMoney
and it worked. There's no documentation states that we couldn't name web service project with a name more than 61 chars. It still perplexes me since microsoft uses a cut off to be 61 instead of 64 which is exactly 8 bytes.