<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:georss="http://www.georss.org/georss" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Mick's Breeze Blogs - Biztalk/Sharepoint/... - Dev|.NET Framework 4.5</title>
    <link>http://blogs.breeze.net/mickb/</link>
    <description>Things hard and not so hard....</description>
    <language>en-us</language>
    <copyright>Breeze</copyright>
    <lastBuildDate>Mon, 23 Jan 2012 05:52:20 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.3.9074.18820</generator>
    <managingEditor>mickb@breezetraining.com.au</managingEditor>
    <webMaster>mickb@breezetraining.com.au</webMaster>
    <item>
      <trackback:ping>http://blogs.breeze.net/mickb/Trackback.aspx?guid=57f9b076-24b0-404a-a5b0-d10580298bda</trackback:ping>
      <pingback:server>http://blogs.breeze.net/mickb/pingback.aspx</pingback:server>
      <pingback:target>http://blogs.breeze.net/mickb/PermaLink,guid,57f9b076-24b0-404a-a5b0-d10580298bda.aspx</pingback:target>
      <dc:creator>Mick Badran</dc:creator>
      <wfw:comment>http://blogs.breeze.net/mickb/CommentView,guid,57f9b076-24b0-404a-a5b0-d10580298bda.aspx</wfw:comment>
      <wfw:commentRss>http://blogs.breeze.net/mickb/SyndicationService.asmx/GetEntryCommentsRss?guid=57f9b076-24b0-404a-a5b0-d10580298bda</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Hi folks, welcome to Monday…so I thought.
</p>
        <p>
Here I was registering a message inspector which should take 5 mins tops.
</p>
        <p>
Find the right config, make sure the .NET full assembly name is cool and away we go.
</p>
        <p>
I wanted to use this guy from my custom WCF Adapter within BizTalk – so I needed my
new message inspector to be seen by BizTalk.
</p>
        <p>
So I used:
</p>
        <p>
&lt;add name="wcfMsgPropPromoter" type="Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,Breeze.WCF.Extensions,Version=1.0.0.0,Culture=neutral,PublicKeyToken=c2c8c7e827e9dd6a"/&gt;
</p>
        <p>
and added this guy to the &lt;<strong>behaviorExtensions&gt; </strong>element in the <strong>Machine.Config
for .NET 4.0 x64/.NET 4.0 </strong>(&amp; .NET 2.0 for good measure)
</p>
        <p>
As if a scene from SpongeBob,… <strong>3 hours later….</strong></p>
        <p>
I had triple check GACs, caches, full assembly names etc…<a href="http://blogs.breeze.net/scotts" target="_blank">Scotty
popped</a> his head around and said “Oh yeah I had this one ages ago you need to use
this…”
</p>
        <p>
&lt;add name="wcfMsgPropPromoter" type="Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,
Breeze.WCF.Extensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c2c8c7e827e9dd6a"/&gt;
</p>
        <p>
          <strong>Can you spot the difference?</strong>
        </p>
        <p>
SPACES!!!!
</p>
        <p>
Interestingly enough – this work is part of a .NET plugin I wrote for IIS 7.5 and
to register the plugin you use <strong>“Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,Breeze.WCF.Extensions,Version=1.0.0.0,Culture=neutral,PublicKeyToken=c2c8c7e827e9dd6a"</strong></p>
        <p>
          <strong>NO SPACES!</strong>
        </p>
        <p>
My head hurts for a Monday…
</p>
        <p>
Hopefully you reclaim the hours I’ve lost here.
</p>
        <p>
Mick.
</p>
        <img width="0" height="0" src="http://blogs.breeze.net/mickb/aggbug.ashx?id=57f9b076-24b0-404a-a5b0-d10580298bda" />
      </body>
      <title>BizTalk: Registering a WCF Message Inspector–hours I’ll never get back!!!</title>
      <guid isPermaLink="false">http://blogs.breeze.net/mickb/PermaLink,guid,57f9b076-24b0-404a-a5b0-d10580298bda.aspx</guid>
      <link>http://blogs.breeze.net/mickb/2012/01/23/BizTalkRegisteringAWCFMessageInspectorhoursIllNeverGetBack.aspx</link>
      <pubDate>Mon, 23 Jan 2012 05:52:20 GMT</pubDate>
      <description>&lt;p&gt;
Hi folks, welcome to Monday…so I thought.
&lt;/p&gt;
&lt;p&gt;
Here I was registering a message inspector which should take 5 mins tops.
&lt;/p&gt;
&lt;p&gt;
Find the right config, make sure the .NET full assembly name is cool and away we go.
&lt;/p&gt;
&lt;p&gt;
I wanted to use this guy from my custom WCF Adapter within BizTalk – so I needed my
new message inspector to be seen by BizTalk.
&lt;/p&gt;
&lt;p&gt;
So I used:
&lt;/p&gt;
&lt;p&gt;
&amp;lt;add name="wcfMsgPropPromoter" type="Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,Breeze.WCF.Extensions,Version=1.0.0.0,Culture=neutral,PublicKeyToken=c2c8c7e827e9dd6a"/&amp;gt;
&lt;/p&gt;
&lt;p&gt;
and added this guy to the &amp;lt;&lt;strong&gt;behaviorExtensions&amp;gt; &lt;/strong&gt;element in the &lt;strong&gt;Machine.Config
for .NET 4.0 x64/.NET 4.0 &lt;/strong&gt;(&amp;amp; .NET 2.0 for good measure)
&lt;/p&gt;
&lt;p&gt;
As if a scene from SpongeBob,… &lt;strong&gt;3 hours later….&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
I had triple check GACs, caches, full assembly names etc…&lt;a href="http://blogs.breeze.net/scotts" target="_blank"&gt;Scotty
popped&lt;/a&gt; his head around and said “Oh yeah I had this one ages ago you need to use
this…”
&lt;/p&gt;
&lt;p&gt;
&amp;lt;add name="wcfMsgPropPromoter" type="Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,
Breeze.WCF.Extensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c2c8c7e827e9dd6a"/&amp;gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Can you spot the difference?&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
SPACES!!!!
&lt;/p&gt;
&lt;p&gt;
Interestingly enough – this work is part of a .NET plugin I wrote for IIS 7.5 and
to register the plugin you use &lt;strong&gt;“Breeze.WCF.Extensions.BreezeMessagePromoteBehaviour,Breeze.WCF.Extensions,Version=1.0.0.0,Culture=neutral,PublicKeyToken=c2c8c7e827e9dd6a"&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;NO SPACES!&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
My head hurts for a Monday…
&lt;/p&gt;
&lt;p&gt;
Hopefully you reclaim the hours I’ve lost here.
&lt;/p&gt;
&lt;p&gt;
Mick.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://blogs.breeze.net/mickb/aggbug.ashx?id=57f9b076-24b0-404a-a5b0-d10580298bda" /&gt;</description>
      <comments>http://blogs.breeze.net/mickb/CommentView,guid,57f9b076-24b0-404a-a5b0-d10580298bda.aspx</comments>
      <category>.NET Developer</category>
      <category>BizTalk/2010</category>
      <category>BizTalk/2010 R2</category>
      <category>Dev</category>
      <category>Dev/.NET Framework 4.5</category>
    </item>
    <item>
      <trackback:ping>http://blogs.breeze.net/mickb/Trackback.aspx?guid=41d4fa95-911d-4f07-9ba0-644285833106</trackback:ping>
      <pingback:server>http://blogs.breeze.net/mickb/pingback.aspx</pingback:server>
      <pingback:target>http://blogs.breeze.net/mickb/PermaLink,guid,41d4fa95-911d-4f07-9ba0-644285833106.aspx</pingback:target>
      <dc:creator>Mick Badran</dc:creator>
      <wfw:comment>http://blogs.breeze.net/mickb/CommentView,guid,41d4fa95-911d-4f07-9ba0-644285833106.aspx</wfw:comment>
      <wfw:commentRss>http://blogs.breeze.net/mickb/SyndicationService.asmx/GetEntryCommentsRss?guid=41d4fa95-911d-4f07-9ba0-644285833106</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Hi folks, as you may/may not have been aware these are the core corner stone technologies
of the MS Integration Stack.
</p>
        <p>
The teams have been busily plugging away and coming up with the new versions – 4.5
corresponding to .NET 4.5 framework.
</p>
        <p>
Here’s some links that describe what’s new from MS Santa &amp; his elves:
</p>
        <ol>
          <li>
            <a href="http://msdn.microsoft.com/en-us/library/dd456789(v=vs.110).aspx" target="_blank">What's
New in Windows Communication Foundation 4.5</a>
          </li>
        </ol>
        <ol>
          <li>
New Items I found of note are:</li>
        </ol>
        <ul>
          <li>
New Service Transport Default values – keep an eye on these.</li>
          <li>
Improvements from VS.NET 2011 – validation , better intellisence support.</li>
          <li>
Streaming improved – true async (yay!)</li>
          <li>
WebSocket support – through NetHttp(s)Binding</li>
          <li>
Single WSDL file generation with <strong>‘?singleWSDL’</strong> (which is pretty handy)</li>
          <li>
Self hosted + II hosted allow you to get to <strong>ServiceHost</strong> from code
for dynamic configuration.</li>
          <li>
Binary Encoder supports compression!! – this is generally <strong>gzip</strong> compression.</li>
          <li>
My personal favourite – <strong>UDP support<br /></strong></li>
        </ul>
        <li>
          <a href="http://msdn.microsoft.com/en-us/library/hh305677(v=vs.110).aspx" target="_blank">What's
New in Windows Workflow Foundation in .NET 4.5</a>
        </li>
        <ol>
          <li>
New Items of note are:</li>
        </ol>
        <ul>
          <li>
New Activites – NoPersistScope (possible previously but we needed to write code)</li>
          <li>
WF Designer improvements – several here, but the ‘Outline view’ looks to be easier
to work with.</li>
          <li>
            <strong>C# Expressions</strong> – where’s the F# ones <img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-sadsmile" alt="Sad smile" src="http://blogs.breezetraining.com.au/mickb/content/binary/Windows-Live-Writer/WCF-4.5-WF-4.5-VSNET-2011-Some-details_9F80/wlEmoticon-sadsmile_2.png" /> ??</li>
          <li>
Designer Annotations – add your own comments to keep control of the jungle that is
built.</li>
          <li>
WF Versioning – use WorkflowIdentity &amp; DefinitionIdentity to define the version. <strong>WorkflowServiceHost</strong> supports
multiple versions of the same WF. All pretty cool.</li>
          <li>
WF Designers can still be <strong>rehosted</strong> – I’ve used that many a place.</li>
          <li>
Contract First Development – ticks the boxes.<br /></li>
        </ul>
        <li>
          <strong>WF Rules – still didn’t make the cut. </strong>There is a sample for WF4 using
a custom Activity calling back to WF 3.5 <strong>Policy4</strong> it’s called. It
uses ‘interop’ back to WF3.5 and is found here - <a title="http://msdn.microsoft.com/en-us/library/dd797584(v=VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd797584(v=VS.100).aspx">http://msdn.microsoft.com/en-us/library/dd797584(v=VS.100).aspx</a></li>
        <ol>
          <li>
Will have to check out perf in this new land on these rules.<br /></li>
        </ol>
        <li>
          <strong>Async CTP – </strong>while this didn’t make the ‘whats new’ list, it certainly
does deserve a mention here.<br />
Over the last year I’ve built some pretty serious F# projects, and F# has the async
support through and through the language. After over coming the challenge of learning
it, the Async functionality is absolutely brilliant!!! F# does a great job in being
able to turn a non-async chunk of code/method/class into an async one with by using
the keyword <strong>async </strong>and a <strong>!</strong>. It’s straight forward
from that aspect.<br /><br />
It’s great to see the C# &amp; VB.NETs being able to use the same fundamentals (albeit
not as slick IMO <img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-winkingsmile" alt="Winking smile" src="http://blogs.breezetraining.com.au/mickb/content/binary/Windows-Live-Writer/WCF-4.5-WF-4.5-VSNET-2011-Some-details_9F80/wlEmoticon-winkingsmile_2.png" />).
– see a previous POST - <a title="http://blogs.breezetraining.com.au/mickb/2011/04/26/EasierAsyncProgrammingComingToCVBSoon.aspx" href="http://blogs.breezetraining.com.au/mickb/2011/04/26/EasierAsyncProgrammingComingToCVBSoon.aspx">http://blogs.breezetraining.com.au/mickb/2011/04/26/EasierAsyncProgrammingComingToCVBSoon.aspx</a><br /><br />
As developers we sit here and say – <strong>what do I need this for?</strong> My code
runs fine as it….and yes for the most part of what we do on our machine it does. This
technology really comes into it’s own when you want consistent throughput from a solution
with 1 person or 10000 concurrent people using it. That’s the difference.<br /><br /><strong>To use it:</strong></li>
        <ol>
          <li>
            <strong>Get VSNET 2011 </strong>(as it requires a new compiler)</li>
          <li>
Use <strong>ASYNC CTP (refresh3) </strong>with <strong>VSNET2010 SP1<br /></strong></li>
        </ol>
        <li>
Check it out from here - <a title="http://msdn.microsoft.com/en-us/vstudio/gg316360" href="http://msdn.microsoft.com/en-us/vstudio/gg316360">http://msdn.microsoft.com/en-us/vstudio/gg316360</a></li>
        <img width="0" height="0" src="http://blogs.breeze.net/mickb/aggbug.ashx?id=41d4fa95-911d-4f07-9ba0-644285833106" />
      </body>
      <title>WCF 4.5 WF 4.5 VSNET 2011: Some details</title>
      <guid isPermaLink="false">http://blogs.breeze.net/mickb/PermaLink,guid,41d4fa95-911d-4f07-9ba0-644285833106.aspx</guid>
      <link>http://blogs.breeze.net/mickb/2011/12/12/WCF45WF45VSNET2011SomeDetails.aspx</link>
      <pubDate>Mon, 12 Dec 2011 01:00:52 GMT</pubDate>
      <description>&lt;p&gt;
Hi folks, as you may/may not have been aware these are the core corner stone technologies
of the MS Integration Stack.
&lt;/p&gt;
&lt;p&gt;
The teams have been busily plugging away and coming up with the new versions – 4.5
corresponding to .NET 4.5 framework.
&lt;/p&gt;
&lt;p&gt;
Here’s some links that describe what’s new from MS Santa &amp;amp; his elves:
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;a href="http://msdn.microsoft.com/en-us/library/dd456789(v=vs.110).aspx" target="_blank"&gt;What's
New in Windows Communication Foundation 4.5&lt;/a&gt;
&lt;/li&gt;
&lt;ol&gt;
&lt;li&gt;
New Items I found of note are:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;
New Service Transport Default values – keep an eye on these.&lt;/li&gt;
&lt;li&gt;
Improvements from VS.NET 2011 – validation , better intellisence support.&lt;/li&gt;
&lt;li&gt;
Streaming improved – true async (yay!)&lt;/li&gt;
&lt;li&gt;
WebSocket support – through NetHttp(s)Binding&lt;/li&gt;
&lt;li&gt;
Single WSDL file generation with &lt;strong&gt;‘?singleWSDL’&lt;/strong&gt; (which is pretty handy)&lt;/li&gt;
&lt;li&gt;
Self hosted + II hosted allow you to get to &lt;strong&gt;ServiceHost&lt;/strong&gt; from code
for dynamic configuration.&lt;/li&gt;
&lt;li&gt;
Binary Encoder supports compression!! – this is generally &lt;strong&gt;gzip&lt;/strong&gt; compression.&lt;/li&gt;
&lt;li&gt;
My personal favourite – &lt;strong&gt;UDP support&lt;br&gt;
&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;
&gt;
&lt;li&gt;
&lt;a href="http://msdn.microsoft.com/en-us/library/hh305677(v=vs.110).aspx" target="_blank"&gt;What's
New in Windows Workflow Foundation in .NET 4.5&lt;/a&gt;
&lt;/li&gt;
&lt;ol&gt;
&lt;li&gt;
New Items of note are:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;
New Activites – NoPersistScope (possible previously but we needed to write code)&lt;/li&gt;
&lt;li&gt;
WF Designer improvements – several here, but the ‘Outline view’ looks to be easier
to work with.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;C# Expressions&lt;/strong&gt; – where’s the F# ones &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-sadsmile" alt="Sad smile" src="http://blogs.breezetraining.com.au/mickb/content/binary/Windows-Live-Writer/WCF-4.5-WF-4.5-VSNET-2011-Some-details_9F80/wlEmoticon-sadsmile_2.png"&gt; ??&lt;/li&gt;
&lt;li&gt;
Designer Annotations – add your own comments to keep control of the jungle that is
built.&lt;/li&gt;
&lt;li&gt;
WF Versioning – use WorkflowIdentity &amp;amp; DefinitionIdentity to define the version. &lt;strong&gt;WorkflowServiceHost&lt;/strong&gt; supports
multiple versions of the same WF. All pretty cool.&lt;/li&gt;
&lt;li&gt;
WF Designers can still be &lt;strong&gt;rehosted&lt;/strong&gt; – I’ve used that many a place.&lt;/li&gt;
&lt;li&gt;
Contract First Development – ticks the boxes.&lt;br&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;
&lt;strong&gt;WF Rules – still didn’t make the cut. &lt;/strong&gt;There is a sample for WF4 using
a custom Activity calling back to WF 3.5 &lt;strong&gt;Policy4&lt;/strong&gt; it’s called. It
uses ‘interop’ back to WF3.5 and is found here - &lt;a title="http://msdn.microsoft.com/en-us/library/dd797584(v=VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd797584(v=VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd797584(v=VS.100).aspx&lt;/a&gt;
&lt;/li&gt;
&lt;ol&gt;
&lt;li&gt;
Will have to check out perf in this new land on these rules.&lt;br&gt;
&lt;/li&gt;
&lt;/ol&gt;
&gt;
&lt;li&gt;
&lt;strong&gt;Async CTP – &lt;/strong&gt;while this didn’t make the ‘whats new’ list, it certainly
does deserve a mention here.&lt;br&gt;
Over the last year I’ve built some pretty serious F# projects, and F# has the async
support through and through the language. After over coming the challenge of learning
it, the Async functionality is absolutely brilliant!!! F# does a great job in being
able to turn a non-async chunk of code/method/class into an async one with by using
the keyword &lt;strong&gt;async &lt;/strong&gt;and a &lt;strong&gt;!&lt;/strong&gt;. It’s straight forward
from that aspect.&lt;br&gt;
&lt;br&gt;
It’s great to see the C# &amp;amp; VB.NETs being able to use the same fundamentals (albeit
not as slick IMO &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-winkingsmile" alt="Winking smile" src="http://blogs.breezetraining.com.au/mickb/content/binary/Windows-Live-Writer/WCF-4.5-WF-4.5-VSNET-2011-Some-details_9F80/wlEmoticon-winkingsmile_2.png"&gt;).
– see a previous POST - &lt;a title="http://blogs.breezetraining.com.au/mickb/2011/04/26/EasierAsyncProgrammingComingToCVBSoon.aspx" href="http://blogs.breezetraining.com.au/mickb/2011/04/26/EasierAsyncProgrammingComingToCVBSoon.aspx"&gt;http://blogs.breezetraining.com.au/mickb/2011/04/26/EasierAsyncProgrammingComingToCVBSoon.aspx&lt;/a&gt;
&lt;br&gt;
&lt;br&gt;
As developers we sit here and say – &lt;strong&gt;what do I need this for?&lt;/strong&gt; My code
runs fine as it….and yes for the most part of what we do on our machine it does. This
technology really comes into it’s own when you want consistent throughput from a solution
with 1 person or 10000 concurrent people using it. That’s the difference.&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;To use it:&lt;/strong&gt;
&lt;/li&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Get VSNET 2011 &lt;/strong&gt;(as it requires a new compiler)&lt;/li&gt;
&lt;li&gt;
Use &lt;strong&gt;ASYNC CTP (refresh3) &lt;/strong&gt;with &lt;strong&gt;VSNET2010 SP1&lt;br&gt;
&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;li&gt;
Check it out from here - &lt;a title="http://msdn.microsoft.com/en-us/vstudio/gg316360" href="http://msdn.microsoft.com/en-us/vstudio/gg316360"&gt;http://msdn.microsoft.com/en-us/vstudio/gg316360&lt;/a&gt;
&lt;/li&gt;&gt;
&lt;img width="0" height="0" src="http://blogs.breeze.net/mickb/aggbug.ashx?id=41d4fa95-911d-4f07-9ba0-644285833106" /&gt;</description>
      <comments>http://blogs.breeze.net/mickb/CommentView,guid,41d4fa95-911d-4f07-9ba0-644285833106.aspx</comments>
      <category>.NET Developer</category>
      <category>Async</category>
      <category>BizTalk</category>
      <category>Dev</category>
      <category>Dev/.NET Framework 4.5</category>
    </item>
  </channel>
</rss>