Search Results for "Hai Ning"

AlwaysOn Backup and Other Tips

SQL Server’s AlwaysOn technology (available since SQL Server 2012) provides high-availability and disaster-recovery database functionality which largely supplants mirroring and log-shipping – in fact, mirroring is now deprecated.  Exactly what functionality is available and how robust it is, varies by release (2012+), edition (Standard versus Enterprise) and the physical infrastructure devoted to it.  AlwaysOn is fairly easy to set up (though it requires cooperation from both Windows Server and networking admins) and, relative to the required effort, provides exceptional durability for SQL Server databases.  AlwaysOn is not a complete OOTB durability solution and has significant gaps – e.g. it does not maintain SQL Server logins and roles synchronized across multiple servers – but it is an excellent start for the needs it caters to.
This post assumes the reader has at least a basic familiarity with SQL Server backups, as well…

Overview of the Office 365 Subscription Service

Office 365 is a subscription service from Microsoft for the cloud based application suite. There are a number of different versions that offer personal consumers / end users, small businesses, large corporations, and government institutions, the ability to streamline their use and cost when it comes to the applications they need and use.
This blog post is a high level introduction to the two personal consumer and end user subscription versions available, the base, listed costs for each plan, (as listed at the time of this post’s publication), and the services that are available under each version.
I also offer a quick review of Office Home & Student 2016 edition, which is the one-time purchase version option for the Office 2016 suite, rather than an ongoing subscription based cost version like the Office 365 Personal or Office 365 Home editions.
There are two additional…

Field of Streams – The Future of Integrations with iPaaS – (Integration Platform-as-a-Service)

There is no debate that software-as-a-service (SaaS) has experienced significant market growth over the past five years. Gartner and Forbes project increased growth of up to 30 percent through 2018. Current revenue metrics support those figures thus far in 2015:

As a result of this growth in the SaaS market, most companies will soon develop the business need to connect with cloud-based applications. Integration needs have expanded from traditional, on-premises B2B applications to include a wide variety of data sources: mobile devices, real-time feeds and unstructured data sets from cloud and hybrid endpoints. These new demands have redefined how we think about integration interfaces and APIs, as well as the tools we choose to build, maintain and monitor them.
Companies now find themselves trying to balance legacy and custom applications already on-premises, with the rise of social media applications and the explosive…

Build 2012 Recap

The Adventure of Build 2012
This has been and exciting year for technology especially around Windows8. Shortly after Build 2011, last year, I began my work with Windows8 and completed my first book ever Getting Started with Windows 8 Apps. A large part of this year has been spent really understanding all the pieces of Windows 8 and the new Windows Runtime. That passion has extended further into really trying to get the message out and push others to embrace the true breadth of what this means for computing and our profession as software developers. At VSLive in August, where I was fortunately to be on the roster with some extremely distinguished speakers, I learned the extent to which Microsoft was really pushing this year with releases for virtually every product on the market. From all versions of Windows, Windows Server…

jQuery Part 1: jQuery Basics

Welcome to my first blog post on the topic of jQuery. This is the first part of a three part series. This post will cover most of the basic features of jQuery. The next post will wrap up the basic jQuery features and go through an example using what we learned. The final post will cover jQuery’s more advanced features and include another example.
What is jQuery?
jQuery is a Javascript library. At its core, jQuery enables authors to easily select and manipulate the elements of an HTML page. But jQuery is much more than just that. jQuery was designed for extension. There are over a thousand plugins available for jQuery with functionality ranging from rich UI features to Ajax. With all of this power it is easy to see why jQuery has become one of the web’s most loved Javascript libraries.


I came across an article on CodeProject about creating a custom pipeline component for disassembling incoming messages in zip formats. Even though it is implemented in 2004 version, it is still valid for 2006. It articulates well on how the custom pipeline is constructed in C# and how it can be deployed to a BizTalk solution.

Distinguished Fields vs. Property Fields

One of the vexing problems when designing XML schemas for a BizTalk solution is to decide whether to promote a distinguished field or a property field. You can do both types of promotion using the Promote Property dialog box in BizTalk Schema Editor, but which one do you need?
Well, generally speaking, distinguished fields can only be used in the orchestration engine, whereas promoted property fields can be accessed through all phases of the BizTalk message processing, including orchestration, routing, pipelines, and of course custom code.
Behind the scene, the real difference lies within the implementation of these two types of promotions. For promoted property fields, BizTalk simply takes note of the XPath expression used to point to the property fields, whereas for distinguished field, the values of the fields are actually copied to the message context within the orchestration. The performance…

Programmatically Creating A New Message in BizTalk Pipeline Component

In the BizTalk Pipeline component, often times you need to construct new messages out of the received messages in the Disassemble stage before passing them on to the orchestration. This can be done in a few different ways.
The easiest way is to build a concatenated XML string using StringBuilder or something similar, and load it into a new XmlDocument object. However, this is very inflexible. If the structure of the message is changed, the Pipeline component would have to be recompiled and redeployed. Another approach will be to load the XML strings from a configuration file at runtime, or keep it as a separate resource file to be loaded at the runtime. This approach avoids the recompilation process when the XML structure is changed, but you still have to worry about keeping the external XML file in sync with the…

View Orchestration in C#

BizTalk Orchestration Designer is the core tool for laying out components representing business processes, and connecting them with logic operations when designing BizTalk applications in Visual Studio. Behind the scene, the XLANG compiler actually generates C# source code before compiling it into .NET assemblies. If you ever want to look under the hood and view the C# source, here is a little trick.
Use your favoriate registry editor (I simply use RegEdit.exe), go to HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0. This is where some key properties of Visual Studio 2005 IDE are stored. Add a DWORD value named “GenerateCSFiles”, and set the value to 1.
Next time you launch Visual Studio to open a BizTalk project with orchestration files (.odx file) in it, click on the “Show All Files” icon in the Solution Explorer after the project is built. You will see along side with your abc.odx…

Tutorial Updates

If you are pulling your hair out wondering why you followed the tutorial to the letter and yet things aren’t working as it should be, here is Lisa’s Blog site [dead link] that provides the latest updates to the tutorial. Please make sure you download the latest tutorial from MSDN site instead of using the out-of-dated one comes with BizTalk installation. Trust me this will save you a lot of sleepless nights.