by community-syndication | May 18, 2010 | BizTalk Community Blogs via Syndication
Looks like the beta of BizTalk Server 2010 was released today – three words: Windows 7 Support!
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=0f852e77-f792-4784-b2d4-95113d40db64
Hat-tip: Nick M.
by community-syndication | May 18, 2010 | BizTalk Community Blogs via Syndication
In Windows Workflow Foundation 4 it’s easy to create a workflow and expose it as a WCF service. But one thing is that it exposes a XAMLX endpoint to each client can see the service actually implemented as a workflow service instead of a regular service. One way to hide that is to use a regular SVC file as the implementation and point that to a workflow using the WorkflowServiceHostFactory.
See the original XAMLX extension
To change this to an SVC extension we need to do a few things. First we need to use a regular workflow instead of a workflow service. The reason is a regular workflow is compiled into the assembly while a workflow service isn’t compiled. So first step is to add a Workflow1.xaml workflow and copy the content of the Service1.xamlx into it.
<Activity mc:Ignorable="sap" x:Class="DeclarativeServiceLibrary1.Workflow1" sap:VirtualizedContainerService.HintSize="317,384" mva:VisualBasic.Settings="Assembly references and imported namespaces for internal implementation" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mv="clr-namespace:Microsoft.VisualBasic;assembly=System" xmlns:mva="clr-namespace:Microsoft.VisualBasic.Activities;assembly=System.Activities" xmlns:p="http://tempuri.org/" xmlns:p1="http://schemas.microsoft.com/netfx/2009/xaml/servicemodel" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:s1="clr-namespace:System;assembly=System" xmlns:s2="clr-namespace:System;assembly=System.Xml" xmlns:s3="clr-namespace:System;assembly=System.Core" xmlns:sad="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:sap="http://schemas.microsoft.com/netfx/2009/xaml/activities/presentation" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=System" xmlns:scg1="clr-namespace:System.Collections.Generic;assembly=System.ServiceModel" xmlns:scg2="clr-namespace:System.Collections.Generic;assembly=System.Core" xmlns:scg3="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:sd="clr-namespace:System.Data;assembly=System.Data" xmlns:sl="clr-namespace:System.Linq;assembly=System.Core" xmlns:st="clr-namespace:System.Text;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Sequence DisplayName="Sequential Service" sad:XamlDebuggerXmlReader.FileName="c:\users\maurice\documents\visual studio 2010\Projects\DeclarativeServiceLibrary1\DeclarativeServiceLibrary1\Workflow1.xaml" sap:VirtualizedContainerService.HintSize="277,344">
<Sequence.Variables>
<Variable x:TypeArguments="p1:CorrelationHandle" Name="handle" />
<Variable x:TypeArguments="x:Int32" Name="data" />
</Sequence.Variables>
<sap:WorkflowViewStateService.ViewState>
<scg3:Dictionary x:TypeArguments="x:String, x:Object">
<x:Boolean x:Key="IsExpanded">True</x:Boolean>
</scg3:Dictionary>
</sap:WorkflowViewStateService.ViewState>
<p1:Receive x:Name="__ReferenceID0" CanCreateInstance="True" DisplayName="ReceiveRequest" sap:VirtualizedContainerService.HintSize="255,90" OperationName="GetData" ServiceContractName="p:IService">
<p1:Receive.CorrelationInitializers>
<p1:RequestReplyCorrelationInitializer CorrelationHandle="[handle]" />
</p1:Receive.CorrelationInitializers>
<p1:ReceiveMessageContent>
<OutArgument x:TypeArguments="x:Int32">[data]</OutArgument>
</p1:ReceiveMessageContent>
</p1:Receive>
<p1:SendReply Request="{x:Reference __ReferenceID0}" DisplayName="SendResponse" sap:VirtualizedContainerService.HintSize="255,90">
<p1:SendMessageContent>
<InArgument x:TypeArguments="x:String">[data.ToString()]</InArgument>
</p1:SendMessageContent>
</p1:SendReply>
</Sequence>
</Activity>
Next we add a WCF Service named Workflow1.svc. Delete the code behind file and add a factory pointing to “System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory”
<%@ ServiceHost Service="DeclarativeServiceLibrary1.Workflow1"
Factory="System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory" %>
And that is all there is to it [:)]
Select the Workflow1.svc and press F5 to fire up the WCF Test Client to test the SVC worklfow.
A side benefit is that using the WorkflowServiceHostFactory allows us to derive from it and add our own logic to the WorkflowServiceHost like adding WorkflowExtensions.
Enjoy!
www.TheProblemSolver.nl
Wiki.WindowsWorkflowFoundation.eu
by community-syndication | May 18, 2010 | BizTalk Community Blogs via Syndication
If you are in Minneapolis on Thursday May 20th please join us for the Twin Cities Connected Systems User Group Meeting.
The meeting takes place at 6:00 p.m. at the Microsoft offices at 8300 Norman Center Drive, Bloomington, MN 55437.
Scott Colestock will be speaking on “Everything you wanted to know about Velocity but were afraid to cache”
Here is a write-up of what will be covered:
“Scott Colestock will be talking about Microsoft’s AppFabric Cache. The AppFabric Cache (aka Velocity) offers a distributed caching solution, not unlike the popular "memcached" open source library. Come and hear about the concepts and terminology, as well as deployment considerations, typical usage patterns, pitfalls, and more.”
by community-syndication | May 18, 2010 | BizTalk Community Blogs via Syndication
The final release of the Silverlight 4 Tools for Visual Studio 2010 and WCF RIA Services is now available for download.
Download and Install
If you already have Visual Studio 2010 installed (or the free Visual Web Developer 2010 Express), then you can install both the Silverlight 4 Tooling Support as well as WCF RIA Services support by downloading and running this setup package (note: please make sure to uninstall the preview release of the Silverlight 4 Tools for VS 2010 if you have previously installed that).
The Silverlight 4 Tools for VS 2010 package extends the Silverlight support built into Visual Studio 2010 and enables support for Silverlight 4 applications as well. It also installs WCF RIA Services application templates and libraries:
Today’s release includes the English edition of the Silverlight 4 Tooling – localized versions will be available next month for other Visual Studio languages as well.
Silverlight Tooling Support
Visual Studio 2010 includes rich tooling support for building Silverlight and WPF applications.
It includes a WYSIWYG designer surface that enables you to easily use controls to construct UI – including the ability to take advantage of layout containers, and apply styles and resources:
The VS 2010 designer enables you to leverage the rich data binding support within Silverlight and WPF, and easily wire-up bindings on controls. The Data Sources window within Silverlight projects can be used to reference POCO objects (plain old CLR objects), WCF Services, WCF RIA Services client proxies or SharePoint Lists.
For example, let’s assume we add a “Person” class like below to our project:
We could then add it to the Data Source window which will cause it to show up like below in the IDE:
We can optionally customize the default UI control types that are associated for each property on the object. For example, below we’ll default the BirthDate property to be represented by a “DatePicker” control:
And then when we drag/drop the Person type from the Data Sources onto the design-surface it will automatically create UI controls that are bound to the properties of our Person class:
VS 2010 allows you to optionally customize each UI binding further by selecting a control, and then right-click on any of its properties within the property-grid and pull up the “Apply Bindings” dialog:
This will bring up a floating data-binding dialog that enables you to easily configure things like the binding path on the data source object, specify a format convertor, specify string-format settings, specify how validation errors should be handled, etc:
In addition to providing WYSIWYG designer support for WPF and Silverlight applications, VS 2010 also provides rich XAML intellisense and code editing support – enabling a rich source editing environment.
Silverlight 4 Tool Enhancements
Today’s Silverlight 4 Tooling Release for VS 2010 includes a bunch of nice new features. These include:
Support for Silverlight Out of Browser Applications and Elevated Trust Applications
You can open up a Silverlight application’s project properties window and click the “Enable Running Application Out of Browser” checkbox to enable you to install an offline, out of browser, version of your Silverlight 4 application. You can then customize a number of “out of browser” settings of your application within Visual Studio:
Notice above how you can now indicate that you want to run with elevated trust, with hardware graphics acceleration, as well as customize things like the Window style of the application (allowing you to build a nice polished window style for consumer applications).
Support for Implicit Styles and “Go to Value Definition” Support:
Silverlight 4 now allows you to define “implicit styles” for your applications. This allows you to style controls by type (for example: have a default look for all buttons) and avoid you having to explicitly reference styles from each control.
In addition to honoring implicit styles on the designer-surface, VS 2010 also now allows you to right click on any control (or on one of it properties) and choose the “Go to Value Definition” context menu to jump to the XAML where the style is defined, and from there you can easily navigate onward to any referenced resources. This makes it much easier to figure out questions like “why is my button red?”:
Style Intellisense
VS 2010 enables you to easily modify styles you already have in XAML, and now you get intellisense for properties and their values within a style based on the TargetType of the specified control. For example, below we have a style being set for controls of type “Button” (this is indicated by the “TargetType” property). Notice how intellisense now automatically shows us properties for the Button control (even within the <Setter> element):
Great Video – Watch the Silverlight Designer Features in Action
You can see all of the above Silverlight 4 Tools for Visual Studio 2010 features (and some more cool ones I haven’t mentioned) demonstrated in action within this 20 minute Silverlight.TV video on Channel 9:
WCF RIA Services
Today we also shipped the V1 release of WCF RIA Services. It is included and automatically installed as part of the Silverlight 4 Tools for Visual Studio 2010 setup.
WCF RIA Services makes it much easier to build business applications with Silverlight. It simplifies the traditional n-tier application pattern by bringing together the ASP.NET and Silverlight platforms using the power of WCF for communication. WCF RIA Services provides a pattern to write application logic that runs on the mid-tier and controls access to data for queries, changes and custom operations. It also provides end-to-end support for common tasks such as data validation, authentication and authorization based on roles by integrating with Silverlight components on the client and ASP.NET on the mid-tier.
Put simply – it makes it much easier to query data stored on a server from a client machine, optionally manipulate/modify the data on the client, and then save it back to the server. It supports a validation architecture that helps ensure that your data is kept secure and business rules are applied consistently on both the client and middle-tiers.
WCF RIA Services uses WCF for communication between the client and the server It supports both an optimized .NET to .NET binary serialization format, as well as a set of open extensions to the ATOM format known as ODATA and an optional JavaScript Object Notation (JSON) format that can be used by any client.
You can hear Nikhil and Dinesh talk a little about WCF RIA Services in this 13 minutes Channel 9 video.
Putting it all Together – the Silverlight 4 Training Kit
Check out the Silverlight 4 Training Kit to learn more about how to build business applications with Silverlight 4, Visual Studio 2010 and WCF RIA Services.
The training kit includes 8 modules, 25 videos, and several hands-on labs that explain Silverlight 4 and WCF RIA Services concepts and walks you through building an end-to-end application with them.
The training kit is available for free and is a great way to get started.
Summary
I’m really excited about today’s release – as they really complete the Silverlight development story and deliver a great end to end runtime + tooling story for building applications.
All of the above features are available for use both in VS 2010 as well as the free Visual Web Developer 2010 Express Edition – making it really easy to get started building great solutions.
Hope this helps,
Scott
P.S. In addition to blogging, I am also now using Twitter for quick updates and to share links. Follow me at: twitter.com/scottgu
by community-syndication | May 17, 2010 | BizTalk Community Blogs via Syndication
http://www.microsoft.com/australia/technet/ie8milk/Default.aspx
by community-syndication | May 17, 2010 | BizTalk Community Blogs via Syndication
When using WCF receive adapter with SQL binding inPolling modeplease be aware of the following problem.
Problem:
At some regular but seemingly random intervals the application stops processing new requests, places a lock on the database and prevent other application from accessing it. Initially it looked like DTC issue, as it was distributed transaction that stalled most of the time.
Symptoms:
Orchestration instances in Dehydrated state, receive location not picking up new messages, exclusive locks on database tables, errors in DTC trace. You may see DTCXact transaction open when executing DBCC OPENTRAN. Other applications accessing the same tables may not be able to execute queries and return timeouts.
Cause:
Microsoft hasconfirmed that there is a bug in the WCF-SQL adapter that results in threadand memory leak.In the receive adapter binding configuration there’s receiveTimeout property set to 10 minutes by default. If during this period data is not found in the table the adapter would start new thread and allocate more memory without releasing old resources.Thus if there’s no new data in the table for a long time a new thread will be created in the host instance every 10 minutes until it reaches threshold (1000) and then there’s no threads left for this host instance and it can’t start/complete any tasks. Then this host instance won’t be able to do anything. If other artifacts are hosted in the instance they will suffer consequences as well.
Solution:
– Set receiveTimeout to the maximum time 24.20:31:23.6470000.
– Place WCF-SQL receive locations in separate host to provide its own thread pool and eliminate impact on other processes
– Ensure WCF-SQL dedicated host instances are restarted at interval less or equal to receiveTimeout to flush threads and memory
– Monitor performance counters Process/Thread Count/BTSNTSvc{n} for thread count trend and respond to alert if it grows by restarting host instance
If you use WCF-SQL Adapter in the Notification mode then make sure to remove sqlAdapterInboundTransactionBehavior otherwise this location will exhibit the same issue. In this case though, setting receiveTimeout doesn’t help and new thread will be created at default intervals (10 min) ignoring maximum setting.
by community-syndication | May 17, 2010 | BizTalk Community Blogs via Syndication
We’ve just encountered an obscure MSDTC/SQL Server issue that I thought would be beneficial to the wide-community.
Following a failover of our (Windows Server 2008) cluster, we started to encounter unexpected errors when BizTalk attempted to perform any tasks that required a distributed transaction, even though everything appeared to be running correctly:MS-DTC was running and we […]
by community-syndication | May 16, 2010 | BizTalk Community Blogs via Syndication
When you install the SharePoint Adapter Web Service for BizTalk, and browse to the BTSharePointAdapterWS.asmx Web Service, you will be prompted with an error that makes it seem like your installation of this Web Service was not successful:
Server Error in ‘/BTSharePointAdapterWS’ Application.
Request format is unrecognized.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidOperationException: Request format is unrecognized
In fact your Web Service may be functioning correctly as mine was. The issue is that the Service metadata is disabled by default. To enable the Service metadata, you will need to update the web.config of the BTSharePointAdapterWS Application
Comment out, or remove the <remove name="Documentation"/> line in order to enable displaying the Service metadata.
Metadata will now be displayed correctly.

by community-syndication | May 15, 2010 | BizTalk Community Blogs via Syndication
Over the next few weeks Microsoft is sponsoring a number of free Web Camp events around the world. These provide a great way to learn about ASP.NET 4, ASP.NET MVC 2, and Visual Studio 2010.
The Web Camps are two day events. The camps aren’t conferences where you sit quietly for hours and people talk at you – they are intended to be interactive. The first day is focused on learning through presentations that are heavy on coding demos. The second day is focused on you building real applications using what you’ve learned. The second day includes hands-on labs, and you’ll join small development teams with other attendees and work on a project together.
We’ve got some great speakers lined up for the events – including Scott Hanselman, James Senior, Jon Galloway, Rachel Appel, Dan Wahlin, Christian Wenz and more. I’ll also be presenting at one of the camps.
Below is the schedule of the remaining events (the sold-out Toronto camp was a few days ago):
- Moscow May 19-19
- Beijing May 21-22
- Shanghai May 24-25
- Mountain View May 27-28
- Sydney May 28-29
- Singapore June 04-05
- London June 04-05
- Munich June 07-08
- Chicago June 11-12
- Redmond, WA June 18-19
- New York June 25-26
Many locations are sold out already but we still have some seats left in a few of them. Registration and attendance to all of the events is completely free. You can register to attend at www.webcamps.ms.
Hope this helps,
Scott
P.S. In addition to blogging, I am also now using Twitter for quick updates and to share links. Follow me at: twitter.com/scottgu
by community-syndication | May 14, 2010 | BizTalk Community Blogs via Syndication
On the 2nd and final day of the Canadian Leadership Summit, I focused on Dynamics xRM and Windows XP to Windows 7 Migration.
xRM/CRM
In the context of “xRM”, the ’x’ stands for “anything” meaning if you have a requirements to track relationships then Dynamics may be a good fit.
Relationships with many different entities
- Employees
- Customers
- Vendors
Dynamics CRM Global Customer list
- ING
- Nortel
- LG
- Volvo
- Sara Lee
- Minnesota Twins
- Vancouver Canucks
- City of London
- Pfizer
- Barclays
- Tourism Whistler
Dynamics xRM Deployments
- Over 22 000 customers
- 1.1 million users
- 4000 worldwide partners
- 50 worldwide hosting partners
- Dynamics CRM runs on top of the xRM platform and is available in the Cloud (hosted by Microsoft) or On Premise
- Experience is delivered through PC, Browser or Phone
Rapid Deployment
The session contained a video that included a complete Sports team management application built in less than 24 hours on the xRM platform by 4 Microsoft employees during the World Partner Conference in the summer of July 2009. Surveys were posted on Twitter asking for ideas and requirements as to what people would like to see built. The deliverable included a semi-detailed design and fully functional system within the allotted time. The team then presented the solution to the attendees of the conference. I have found a LiveMeeting of this event here. Use Meeting ID 8B74CC to view the content.
CRM Key Capabilities
- Point and Click Application Development and Deployment
- Out of the box user experiences (Outlook, Office, Mobile, Offline)
- Leverages Microsoft Application Platform Technologies
- SQL
- Windows Server
- SRS/SAS
- WF
- .Net
CRM 5 – The Road Ahead
Here are some of the themes that Microsoft is focusing for the next version of the software:
Simplicity
- Insightful
- Role-Tailored
- Collaborative
Innovation
- Social
- Connected
- Extensible
Value
- Cloud and On-Premise
- Solution Partners
- Smooth Upgrade
SharePoint and XRM are Complementary
SharePoint and XRM have overlapping capabilities. SharePoint has evolved beyond just storing Word documents. It has become a platform that is capable of performing some tasks that a CRM is capable of . On the flipside CRM, has some lightweight document management features. The end result is that the two platforms work better, together. If you owned both sets of technology, it makes sense to leverage both solutions to build the total package.
- SharePoint better with unstructured data
- xRM is better for structured Data
The next portion of the session involved Christian Gosselin, the CRM Practice Leader for CGI in Quebec, Canada. CGI is a very experienced CRM implementer with over 50 Certified professionals on platform.
Christian, discussed some of the Business and IT Challenges that make CRM a viable option:
Typical Organizational Challenges
- Rapid Innovation is a key mandate
- Waiting for IT to deliver requested Applications
- Business builds shadow applications(MS Access) to survive
- Poor productivity due to many different user interfaces and tools
- Lack of intelligence/insight
IT Challenges
- Limited budget and resources
- Trying to support all requests coming from business
- Option of building or buying (both have big negatives in cost, time and scope)
- Supporting hundreds of legacy applications
- Difficult to deliver quick wins
xRM as a platform
xRM was built from a platform perspective and then added the application as opposed to some other vendors building the CRM application and then duct taping the platform around it in order to make it extensible.
xRM is a complete business application platform:
- Data and Metadata Services
- User experience services
- Access and Security Services
- Analytical Services
- Extensibility Services
- Integration Services
- User Interface – Mash-ups
- Web Services
- Plug-ins
- Data Integration
- Architecture Services
- Deploy once
- Currency Conversion
- Multi-language support
- Platform Management Services
- System Centre Operations Manage
- Process Automation and Orchestration Services
- Point and Click Customization Services
Related Microsoft Technologies
- Outlook
- Office
- SQL Server
- .Net
One Platform, many Applications
Organizations use xRM for a variety of applications including:
- Project Management
- Recruitment Management
- Property Management
- Employee Management
- Asset Management
- Supplier Management
- Program Management
- Customer Management
Benefits of building on Dynamics xRM
- Drive Efficient and Effective IT
- Develop the right business applications
- Deliver Rapid Innovation and Agility
- Don’t have to rebuild the plumbing
- Demonstrate Business Success
- Let IT become the enabler and not the bottleneck
Real Life Projects
Christian then described some of the projects that his organization has been involved in:
- Financial Services Client
- Centralized and shared application accessible across Canada in English and French
- Stronger, more profitable customer relationships
- More Competitive advisor recruitment
- Better regulatory compliance
- New business insights
- Government Client
- Needed to communicate with other Government entities
- Not one line of code was written
- Customizations were accomplished through configuration
- Better collaboration between Ministry and other agencies
- Higher quality of information
- Reduced manual data entry
- Simplified communications
- Ability to follow up on communications is more rapid
- Increased business agility
- Pharmaceutical Client
- Tracking of drug/medical agents
- Implementation was 9 weeks
- More time spent on business requirements than on time to implement
- Centralized application accessible from all of the the world in multiple languages
- Minimal end user training
- Ability to easily generate custom reports with Excel
- Ability to quickly create new LOB applications
Dynamics CRM as a business application platform generally saves 50-70% of the development time as opposed to custom development
Windows XP to Windows 7 – A roadmap for success
The next area that I focused on was migrating from Windows XP to Windows 7. A key component to a Windows 7 migration is the Windows Deployment kit wizard. We saw a 7 year old upgrade his Windows XP system, with data, to Windows 7 using this wizard. I should note that his father works for Microsoft in the Windows division so I suspect he had a little help.
When configuring the Windows Deployment kit, a wizard will walk you through the various options including:
- Choose Migration type
- Refresh this computer
- save information and install new OS
- Upgrade this computer
- Specify computer name
- Join domain or workgroup
- Specify where to save your data and settings
- Can specify network location
- Specify language and locals
- Time Zone
- Specify BitLocker configuration
- Branding
Advice
- Refresh existing hardware – don’t have to wait for hardware replacement
- Make the process fast and non-disruptive
- Test wisely, but don’t expect things to break as often as before
- That means fewer helpdesk calls
Microsoft’s Environment overview
- Microsoft has offices in 105 countries
- 89 000 employees globally
- 70 000 venders globally
- 220 windows deployment servers and product servers globally on a virtual server infrastructure
- User is supported by 5 call centers globally
How did it go?
- No new hardware purchases beyond 3 year refresh cycle
- Very few compatibility issues – mostly with Internet Explorer 8
- Single image for each platform(x64 and x86) for entire globe
- Helpdesk staff was not increased
- Deployment numbers
- Beta > 60 K in 3 months
- RC >90K in 3 months
- RTM > 100k in 3 months
How was it possible?
- User excitement
- easier to achieve these days because of user satisfaction
- Executive sponsorship and local goals
- Vastly improved toolset
- Task sequence automation
- Hard-link data migration
- Multi-cast and multi-stream deployment model
Early Adopters of Windows 7
- T-Mobile
- Dell
- EDS
- Avanade
- Halliburton
- Sheraton
- Del Monte
- StatollHydro
- WiPro
- Samsung
- BMW
- City of Miami
Recommended Deployment Tools
- Microsoft Deployment Toolkit(MDT) Lite Touch and/or
- System Center Configuration Manager (SCCM) 2007 Zero Touch
- Automates what would be manual processes