405 error – Method not allowed error while calling WCF service inside Plugin in CRM 2011.

Hi,

Recenlty we wrote a plugin that was calling a WCF Rest Service. The plugin was registered on Pre Create of an entity. Here if we were creating the entity record through web interface, the plugin was running fine.

However if we had that plugin being triggered by another plugin (the other plugin was creating the entity record triggering this particular plugin) we were getting “405 – method not allowed” error.

As it turned out the WCF service was getting confused regarding the operation context when being called by another plugin.

Specifying the OperationContextScope fixed the issue.

Original Code

</pre>
using (
 var webChannelFactory =
 new WebChannelFactory<IAutoNumber>(
 new Uri(dictionaryConfigSettings[Constants.AutoNumberServiceUrl])))
 {
 IAutoNumber referralOffer = webChannelFactory.CreateChannel();

// get the next number from sequence
 autoNumber = Constants.PrefixReferralOfferNumber +
 AddPadding(
 referralOffer.GetNextNumber(Constants.EntityNameReferralOffer),
 Constants.PrefixReferralOfferNumberLength);
 }
<pre>

The modified code

</pre>
using (
 var webChannelFactory =
 new WebChannelFactory<IAutoNumber>(
 new Uri(dictionaryConfigSettings[Constants.AutoNumberServiceUrl])))
 {
 IAutoNumber referralOffer = webChannelFactory.CreateChannel();

using (new OperationContextScope((IContextChannel)referralOffer))
 {
 // get the next number from sequence
 autoNumber = Constants.PrefixReferralOfferNumber +
 AddPadding(
 referralOffer.GetNextNumber(Constants.EntityNameReferralOffer),
 Constants.PrefixReferralOfferNumberLength);
 }

}
<pre>

The helpful post

http://www.rgoarchitects.com/nblog/CommentView,guid,26d9b30e-c441-4776-9778-4dfdab58bd3d.aspx

Hope it helps.


Author: Nishant Rana

I love working in and sharing everything about Microsoft.NET technology !

18 thoughts on “405 error – Method not allowed error while calling WCF service inside Plugin in CRM 2011.”

  1. Thanks , I’ve recently been searching for info about this subject for ages
    and yours is the greatest I’ve found out so far. But, what
    in regards to the bottom line? Are you positive in regards to the supply?

    Like

  2. Hi would you mind letting me know which webhost you’re using?
    I’ve loaded your blog in 3 completely different web browsers and I must say this blog
    loads a lot quicker then most. Can you recommend a good internet hosting provider at a fair price?
    Thanks a lot, I appreciate it!

    Like

  3. Howdy I am so glad I found your blog, I really found you by mistake, while I was researching on Yahoo for something else,
    Nonetheless I am here now and would just like to say thank you for
    a fantastic post and a all round exciting blog (I also love the theme/design), I don’t have time to read it all at the minute but I have bookmarked it and also added your RSS feeds,
    so when I have time I will be back to read a great deal more, Please do keep up the great b.

    Like

  4. After draining, clean the tub and the insert using a mild cleaning agent
    as well as warm water. Select the toys that you want to add to the cat tree then attach them where you want them to hang.

    Scratching is a natural behaviour for cats, although
    you’ve probably figured this out by now given the state of your furniture and curtains.

    Like

  5. Chcialbym rozpoczac swoja dzialalnosc. Jednak koszty z utrzymaniem jej sa dla mnie dosc znaczace. Ostatnio pomyslalem o skorzystaniu z biura wirtualnego. Znalazlem oferte http://officepoland.eu/warszawa.php … Korzystal ktos z Was uslug biura wirtualnego ? jak to wyglada w praktce? z gory dziekuje za pomoc…

    Like

Share your thoughts

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s