BizTalk 2013 R2 is available for MSDN subscriber

What’s new in BizTalk Server 2013 R2:

  •  Windows Server 2012 R2, Windows Server 2012, Windows 8.1, Windows 7 SP1.
  • Microsoft Office Excel 2013 or 2010.
  • .NET Framework 4.5 and .NET Framework 4.5.1
  • Visual Studio 2013
  • SQL Server 2014 or SQL Server 2012 SP1
  • SharePoint 2013 SP1
  • WCF-WebHttp adapter now supports sending and receiving JSON messages.
  • SFTP adapter now supports two-factor authentication
  • HL7 Accelerator now supports the following:
    • Provides capability to include free-text data as part of the message that can be processed by the HL7 pipelines.
    • 64-bit support for hosting Hl7 adapter.

Good luck, and play around with it.. Again, you can download it through MSDN Subscriptionhere

 

source (http://biztalkadmin.com/biztalk-server-2013-r2-no-available-to-be-downloaded/)

Publicités

Extension Method

hello everybody,

Extension method are not well know but they are very powerfull.

This article is not a tutorial with extension method but an inventory around it.

When use it

Extension method must be use only for technical issues never for business requirement.

For example, you have a string and you want to split it into list of fix lenght substring (Why MS doesn’t includes in the box????)

public static class StringExtensions{    
    public static List<string> SplitIntoParts(this string input, int partLength)
    {        var result = new List<string>();
        int partIndex = 0;
        int length = input.Length;
        while (length > 0)
{
            var tempPartLength = length >= partLength ? partLength : length;
            var part = input.Substring(partIndex * partLength, tempPartLength);
            result.Add(part);
            partIndex++;
            length -= partLength;}
        return result;
    }

}
And the manner how we call it

string longString = "This is a very long string, which we want to
 split on smaller parts every max. 30 characters long."; // Length: 98
var partLength = 30;
var parts = longString.SplitIntoParts(partLength);

How implement it

As I said previously, extensions are designed for technicals cases. The extension’s code shall not exceed ten or twenty lines.

In Visual Studio,  I recommend to store extensions in one project dedicated. This project can be referenced in each artifact.

Moreover, you can manage your extensions near your client project, in fact String.SpliintParts method should be the same in your client A and your client B, so manage your extensions in your own project.

Where do I can find extensions method

I recommend a great site http://extensionmethod.net/

It includes not only .NET extensions, but don’t use all extensions without reading the code. Make sure you understand what it does, and all methods may not bug free

 

 

 

 

News from Azure cloud

This morning we released a massive amount of enhancements to Microsoft Azure.  Today’s new capabilities and announcements include:

  • Virtual Machines: Integrated Security Extensions including Built-in Anti-Virus Support and Support for Capturing VM images in the portal
  • Networking: ExpressRoute General Availability, Multiple Site-to-Site VPNs, VNET-to-VNET Secure Connectivity, Reserved IPs, Internal Load Balancing
  • Storage: General Availability of Import/Export service and preview of new SMB file sharing support
  • Remote App: Public preview of Remote App Service – run client apps in the cloud
  • API Management: Preview of the new Azure API Management Service
  • Hybrid Connections: Easily integrate Azure Web Sites and Mobile Services with on-premises data+apps (free tier included)
  • Cache: Preview of new Redis Cache Service
  • Store: Support for Enterprise Agreement customers and channel partners

 

For more details of each new capapbilities, please visit scott gu’s blog

 

News from C# 6

hi everybody,

Have you heard some news about Roslyn. Theis project is a compiler entierely recasting.  The project is now an open source project and it’s available on codeplex.

Let’s take a look around about the new functions

 Using Static

Now you can make an using on an object. That permit to import all static method without type the object name. Here is an example with String.Concat :

using System.String;
…..
String a = « hello »;
String b = « world »;
Console.WriteLine(Concat(a, » « ,b, »! »);

 

Properties initialization

Now we can initialized properties to a default value at object initialization :

public class class1
{
public int cmpt {get;set;} = 42;
}

Note now you can create readonly property with the same syntax, but I prefer create a const member :

public class class1
{
public int cmpt {get;} = 42;
}

 

Improvement around primary constructor

This new syntax concern again the properties, you can set the property intial value when calling the method :

 

public class class1(int x, int y)
{
public int a {get;set;} =x;
public int b {get;set;} =y;
}

The syntax benefit is only at code line number, it’s better for understanding, but I think it will be useful.

dictionnary and indexed member initialization

Since  C# you can initialize dictionary  with a syntax not really intuitive :

var letters = new Dictionary<string, int>
{
{ « a », 1 },
{ « b », 2 },
{ « c », 3 },

};

Now there is two better way to initialize a dictionary :

var letters = new Dictionary<string, int>
{
[« a »] = 1,
[« b »] = 2,
[« c »] = 3,

};

 

Or

var letters = new Dictionary<string, int>
{
$a = 1,
$b = 2,
$c = 3,

};

The second one, I think, will be very useful for json object

Thus, you can access to indexed value with the manner :

 

int a = letters.$a

 

 Declaration scope for variable

Until now, a variable only could be declared in autonom statement, not in the midlle of a function. But sometime, we only need a temporar variable result of tryparse for example. Now it’s possible :

if (Decimal.TryParse(txtPrice.Txt, out decimal price))
product.Price = price;

 

Filtering exception

in VB.NET it’s already possible, and now in c# 6 we can do that like in VB :

try
{
using (var stream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write))
{

}
}
catch(IOException ex) if (ex.HResult == 0x80070020)
{
// File is in use by another process
// Handle that case…
}
catch(IOException ex) if (ex.HResult == 0x80070035)
{
// Network path was not found
// Handle that case…
}
catch(Exception ex)
{
// Something else happened
// Handle that case…
}

This method target to clarify code, it will be very usefull

 

Conclusion

As we can see, lot of new function has arrived, and lot of more will come. The new statement are not vital but they simpligy developper life.  If you want to show all news implementation visit this page

Source : http://tlevesque.developpez.com/tutoriels/csharp/les-nouveautes-de-csharp-6/#L1-4

 

Techdays sessions

Bonjour à tous, premier article en français puisqu’il concerne la communauté francophone,

J’anime une session aux techdays le jeudi 13 fevrier à 15h15 :

Réalisez le potentiel des données cross canal qui vous entourent

RP, Réseaux Sociaux, CRM, Site de e-commerce, caisses de magasin, site Web, Hadoop : comment analyser les données en provenance de sources de données si différentes ? La solution: mettre l’information à disposition dans le Cloud Windows Azure, avec des connecteurs dédiés et la puissances des outils de Business Intelligence Microsoft. Pour illustrer cette solution, venez découvrir BIjen, une solution permettant de générer des tableaux de bord agrégés et synthétiques des indicateurs de performances multi-sources de l’entreprise. Accessible sur PC et tablettes, l’interface BIjen simplifie l’édition de tableaux de bord multi-sources et cross canal. A destination de l’ensemble des managers, cette solution a pour objectif d’accélérer le partage d’information au sein de l’entreprise mais aussi de faciliter la mesure à 360° de la performance de l’entreprise.

Produits concernés :

  • SQL Azure
  • Office 365
  • SQL Server
  • SharePoint 2013
  • Sharepoint Online
  • Excel

Read more at http://www.microsoft.com/france/mstechdays/programmes/2014/fiche-session.aspx?ID=416acadf-a67d-413d-be12-ee9e00385f04#BIWxcmbOhgysLOVm.99

BizTalk Server 2013 R2

News from BizTalk summit

The next version of BizTalk Server, BizTalk Server 2013 R2 will be due some time mid of next year. Some of the core capabilities will include

Support latest Platforms and Standards

  • Visual Studio 2013, Windows Server 2012 R2, SQL Server 2014, Office 2013, System Center 2012 SP1
  • SWIFT 2012 Message Pack

Health Care

  • MLLP 64 bit support
  • Dynamic MLLP adapter
  • Better troubleshooting
  • HL7 2.6
  • Support for free text data type

Adapter Improvements

  • SFTP
  • Proxy support
  • SSO support
  • REST
  • JSON support
  • Empty message support while exposing REST services
  • Service Bus adapter
  • Authentication improvements

source http://blogs.biztalk360.com/whats-the-story-from-biztalk-integration-summit-2013-seattle/

Throttling state

Use the following steps to access the performance counters.

On the Desktop, click Start, point to Programs, point to Administrative Tools, and then click Performance.

In the Performance dialog box, click Add.

In the Add Counters dialog box, from the Performance object drop-down list, select from the available BizTalk:Message Agent performance counters, and then click Add.

In the Add Counters dialog box, do one of the following:

After selecting the counters, click Add and then click Close.

For each Host instance,the throttlings state are shown with « Message delivery throttling state » and « Message publishing throttling state »

When there is no throttling, their values are 0. But when they got throttlhing state, their value could be 1 to 11

Here is their definition :

Message delivery throttling state A flag indicating whether the system is throttling message delivery (affecting XLANG message processing and outbound transports).

  • 0: Not throttling
  • 1: Throttling due to imbalanced message delivery rate (input rate exceeds output rate)
  • 3: Throttling due to high in-process message count
  • 4: Throttling due to process memory pressure
  • 5: Throttling due to system memory pressure
  • 9: Throttling due to high thread count
  • 10: Throttling due to user override on delivery
Message publishing throttling state A flag indicating whether the system is throttling message publishing (affecting XLANG message processing and inbound transports).

  • 0: Not throttling
  • 2: Throttling due to imbalanced message publishing rate (input rate exceeds output rate)
  • 4: Throttling due to process memory pressure
  • 5: Throttling due to system memory pressure
  • 6: Throttling due to database growth
  • 8: Throttling due to high session count
  • 9: Throttling due to high thread count
  • 11: Throttling due to user override on publishing

For fixing throttling, start by readung this link http://msdn.microsoft.com/en-us/library/aa559893(BTS.10).aspx

Then I wish you luck