Responsive Ads Here

Tuesday, August 29, 2017

 Steps For Creating MSMQ Support Application


Hi friend's, today we are going to understand ubout MSMQ(Microsoft Message Queuing) and how will setup/configure MSMQ in our local machine.

Now first try to understand about MSMQ.

  1. What is MSMQ?
  2. How Does it Configure in local machine?

1. What is a MSMQ?

MSMQ is stand for Microsoft Message Queuing. Message Queuing is a message infrastructure and a development platform for creating distributed messaging applications for the Microsoft Windows Operating System.Message Queuing is a part of the Windows Operating System.
  • There are different types of Message Queues:
    • Normal Message
    • Acknowledgement Message
    • Respond Message
    • Report Message

2. How Does it Configure in local machine?

Hear mention step by step configure message queue in local machine.
  1. Turn On following Windows Features
  2. Create WCF Service
  3. Config in IIS Server
  4. Manage and Config MSMQ
  5. Open Web Config of WCF Service
  6. Add Binding for it under serviceModel
  7. Add services Attribute in serviceModel
  8. After Completion all above mention step check our service is running  or not

2.1. Turn On following Windows Features

  • Windows Communication Foundation Non-HTTP Activation under .Net Framework 3.5.
  • If we have .Net Framework 4.6 Advanced Services feature then all the features under it.
  • All the features under Internet Information System and Internet Information System Hostable web core.
  • All the features under Microsoft Message Queue Server.
  • All the features under Windows Process Activation Services.
  • As Shown in screenshot.
Fig 1.1

2.2. Create WCF Service

  • Open Visual Studio
  • Create New Project
  • WCF Service Application
  • Give Name and folder location and create
  • Right click on Service.svc
  • Click on View Mark Up

2.3. Config in IIS Server

  • Start > Internet Information Service (IIS) Manager.
  • Right click on Application Pool > Add Application Pool > give name same as your Project name so it will easy to map as shown in fig 3.1.

Fig 3.1
  • Right click on Application Pool > Add Application Pool > give name same as your Project name so it will easy to map as shown in fig 3.1.
  • Right Click on Default Web Site under Sites and Add application > give alias same as your project name > and then select application Pool which you created as shown in fig 3.2.
Fig 3.2
  • Right Click on Default Web Site under Sites and Add application > give alias same as your project name > and then select application Pool which you created as shown in fig 3.2 and browse for your project in physical path and save it.
  • Right click on created site DataPushWCFService> Manage Application> Advance Settings > Enable protocols = http,net.msmq.

2.4. Manage and Config MSMQ

  • Right click on My Computer > Manage > Expand Services and Applications> Expand message Queue > Right Click on Private Queues > New > Private Queue.
Fig 4.1
  • Right click on DataPushWCFService private queue.
  • Properties > Click on Security Tab > add new group or user names > add “IIS APPPOOL\DataPushWCFService” without double quotes in that DataPushWCFService is same name as site in application pool and allow all permissions in that and other users also.

2.5. Open Web Config of WCF Service



  • Go to system.serviceModel
  • Into Service Behaviour there will be one default behavior, add name for that default behaviours. If you need more than one behavior then you can add more than one behaviour as per your requirement as shown in following image and change includeExceptionDetailInFaults to true.



Fig 5.1

2.6. Add Binding for it under ServiceModel


  • Add Bindings Attribute in it
  • In that add .netMsmqBinding attribute as shown below image.
Fig 6.1

2.7. Add services Attribute in ServiceModel

  • Add services Attribute in serviceModel
  • Add Service in that Services attribute with endpoints as shown below.
Fig 7.1
In that name with WcfDemoApp should be your project name and Service1 should be your Service name and add bindingConfiguration will be which you created for it as shown in fig 7.1, add endpoints as shown in fig 7.1 in that Address should be your private queue name as shown in fig 7.1 and bindingConfiguration which you created with name No Security Under Binding attribute of ServiceModel.

2.8. After Completion all above mention step check our service is running  or not

  • After completion of this all steps to check our service is running or not > Open IIS >Click on your Web site> Select yourService.svc file> click on Browse, If it not showing any error then its working fine now code to retrieve or consume this WCF Service, Copy its URL.


2.9. Some known Issues and solutions



  • Create one console Application > Create New Project > Console Application >Browse Folder path > Create > right click on references > Add service reference > give URL which you copied in previous step and add it.

Some known Issues and solutions:

  1. The protocol 'net.msmq' is not supported.
  2. The protocol 'net.tcp' is not supported.
  3. The protocol 'net.formatename' is not supported.
  4. The protocol 'net.pipe' is not supported.

Solution For solution right click on default web site > Edit Binding > and add net.msmq at localhost, net.tcp at 808:*, net.formatename at localhost and net.pipe at * as shown in below fig 9.1.

Fig 9.1.


   5. The requested content appears to be script and will not be served by the static file handler.
Solution: 

  • cmd -> Right click -> Run as administrator
  • cdC:\Windows\Microsoft.NET\Framework\v4.0.30319
  • aspnet_regiis.exe -i.

So, that's all guys i hope these will you to understand msmq and work easy with msmq. 

 Step By Step Process To Upload Document In Azure Blob Storage Using .NET


Hi friend's, today we are going to understand how to upload document in azure blob storage. i read many blogs and articals about this but i couldn't find any useful blog for this or provided proper information about blob. i collect many information about azure blob and want to share with you. i hope it is useful for you.


Now first try to understand about azure blob.


  1. What is a blob Storage?
  2. Blob Service Concepts
  3. Create an Azure Storage Account
  4. Create a project in visual studio
  5. Install client library & Azure Configuration manager using nuget packages
  6. Code Upload a Image into a container

1. What Is a Blob Storage?

Azure blob Storage is a provide service, large amount of unstructured data in binary or text format.That can accessed from any where using HTTP or HTTPS.

Common use of blob storage:
  • Using blob, image or documents upload directly to browser 
  • Using blob, Uploading video or audio
  • Storing data for backup and restore 
  • Storing data for analysis by an on-premises or Azure-hosted service
2. Blob Service Concepts
  • Storage Account: Storage Account is done through azure access storage account. General-purpose storage account or a Blob storage account which is specialised for storing objects/blobs. please check for more information About Azure Storage Account.
  • Container: Container provider grouping of a set of blobs. an account can contains number of containers.NOTE: The container name must be an small lovercase.
  • Blob: Hear Microsoft describe different type of blob mention below. 
    • Block Blobs: Are Storing text or binary file, such as media files.
    • Page Blobs: can more efficient to read/write orations.Azure Virtual Machines use page blobs as OS and data disks.
    • Append Blobs: Are similar to block blob type
3. Create an Azure Storage Account
4. Create Project in Visual Studio

In Visual Studio, Create an Console application or project first.hear i create console application.
  1.  Select File > New > Project 
  2. Select Installed > Templates > Visual C# > Windows Classic Desktop
  3. Select Console App (.NET Framework)
  4. Enter a name for your application in the Name: field
  5. Select OK


5. Install client library & Azure Configuration manager using nuget packages

Hear two main package need to reference in your project.

  • Microsoft Storage Client Library for .Net:
    • In Visual Studio, Tool > NuGetPackage Manager > Package manager then use this command in command manager.
      • PM> Install-Package WindowsAzure.Storage -Version 8.4.0
  • Microsoft Azure Configuration Manager 
    • In Visual Studio, Tool > NuGetPackage Manager > Package manager then use this command in command manager.
      • PM>Install-Package Microsoft.WindowsAzure.ConfigurationManager -Version 3.2.3
6. Code Upload a Image into a container

  • Create one class file in created project like xxx.cs file.
  • Created this class file Create Static method.
Below mention .net c# code for upload image using block blob type blob storage


static void Main(string[] args)
{
    UploadImageInToBlobStorage();
}

//Class file method
public static void UploadImageInToBlobStorage()
{
// Block blob basics example
StartBlockBlobOperationsAsync().Wait();
}

private static async Task StartBlockBlobOperationsAsync()
{
CloudStorageAccount cloudStorageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
CloudBlobClient cloudBlobClient = cloudStorageAccount.CreateCloudBlobClient();
CloudBlobContainer cloudBlobContainer = cloudBlobClient.GetContainerReference("adftechnobrainsblob");

if (await cloudBlobContainer.CreateIfNotExistsAsync())
{
await cloudBlobContainer.SetPermissionsAsync(
new BlobContainerPermissions
{
PublicAccess = BlobContainerPublicAccessType.Blob
}
);
}

CloudBlockBlob cloudBlockBlob = cloudBlobContainer.GetBlockBlobReference("Image Name Hear");
cloudBlockBlob.Properties.ContentType = filetype;
//HttpPostedFileBase file object property use InputStream
await cloudBlockBlob.UploadFromStreamAsync(Image Stream hear);
}


In Web.config file, under the appSetting key 




So, that's all guys i hope These will you to understand basic of Azure blob upload document.
{ "@context": "http://schema.org", "@type": "Organization", "url": "http://c-sharpnets.blogspot.com/", "logo": "http://c-sharpnets.blogspot.com/images/logo.png" }