Navigation

Saturday, 29 August 2015

New features in C# .NET 6.0

Below are the new features expected to come in upcoming .NET release C# 6.0
  1. Auto Property Initializer 
  2. Primary Constructor and its Body
  3. Import Static members with the help of "using"
  4. Exception Filters
  5. Dictionary Initializer
  6. Conditional access operator to check null values.
Let's see brief description about each below.

1. Auto Property Initializer 

we can initialize property values directly without declaring private fields or within the constructor. See below example

Before C# 6.0

public class Employee
{
    public Employee()
    {
        Salary = 10000;
    }

    public int Salary { get; set; }

    private string _company = "Your Company";

    public string Company
    {
        get { return _company; }
        set { _company = value; }
    }
}

We can write above code using C# 6.0 as below.

public class Employee
{
    public int Salary { get; set; } = 1000;

    public string Company { get; set; } = "Your Company";
   
}


So no more required constructor or private fields to initialize auto properties.

2. Primary Constructor and its Body

In C# 6.0, we can define constructor side by class name itself. Below is the example

Before c# 6.0 

public class Employee
{
    public Employee()
    {
        Salary = 10000;
        Company = "Your Company";
    }

    public int Salary { get; set; }

    public string Company { get; set; }
}

In C# 6.0 


public class Employee(int salary, string company)
{
    public int Salary { get; set; } = salary;

    public string Company { get; set; } = company;
}


3. Import Static members with the help of "using"

In C# 6.0 we no need to access static members with the help of class name, instead we can import static class with help of "using" as we do for namespaces so that we can directly access static variables.

Before C# 6.0

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Enter your username");
        }
    }
}

In C# 6.0

using System.Console;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteLine("Enter your username");
        }
    }
}



Sunday, 10 May 2015

Microsoft.Workflow.Client.ActivityValidationException: Workflow XAML failed validation due to the following errors: Failed to create a 'ListId' from the text

If you are planning to move SharePoint 2013 List workflow from development site to Production environment you must check all the resources (Like Lists/document library or SP groups etc) are existing in the production site before importing workflow package. 

Check https://msdn.microsoft.com/en-us/library/office/jj819316.aspx link for more information about how to package and deploy SharePoint designer workflows.

In one scenario I forgot to create one dependency List that i used in the target workflow and tried to activate the related workflow feature after uploading the workflow package into the Solution Gallery, because of this I encountered the error Microsoft.Workflow.Client.ActivityValidationException: Workflow XAML failed validation due to the following errors: Failed to create a 'ListId' from the text.... 

You will also see some related useful information in the above error (I have removed the some of error message part as that was not required to mention here). 

So I have created the dependency list and again tried to activate the feature.. even this time  I encountered same error because there was already workflow has been created  during the first error so we need to delete that workflow using SharePoint designer and retry activating the feature related to workflow package. This solved my problem and workflow has been created successfully.


Saturday, 9 May 2015

the object used for the selected operation could not be found sharepoint designer

Today i have created list with the help of existing list template, by the time the site is opened in the SharePoint designer. After successfully creating list I refreshed items in designer to check the newly created list. Interesting thing is here I can see the list that I have created but when I try to open the properties of that list, I encountered "the object used for the selected operation could not be found" error. I tried refreshing designer  too many times but in vain.

Solution: I have just closed all the SharePoint Designer windows and reopened the site, this time it worked perfectly. Looks like not big issue but, there at the movement designer may failed to get all the information from the server.

Sunday, 23 November 2014

Constraint violation occurred active directory C# Directory Services

While creating user accounts in active directory using Directory Services through C# we commonly encounter error  Constraint violation occurred.
This is an error which gives the generalized error message where developers can not find the reason of exception or error details exactly. Same way i have wasted 2 hours of time on this error to find out the exact reason and common scenarios related to it. This is because of following cases,

1. When we try to update the country attribute  'c' with string: - Country attribute should be set with only 3 characters or less, if we try to update 'c' attribute with string more than 3 characters length we face Constraint violation occurred error.

In the same way if we try to update any attribute with data that violates it's constraints we may face this generalized error so please make sure you are updating attributes with correct information.

For all attributes information please follow my previous post 

Note: Exception is thrown only at de.CommitChanges(); (de is instance of DirectoryEntry type) irrespective of all lines of code where we set attributes before this line

Sunday, 16 November 2014

Why Microsoft and Why enterprises use office 365 over google apps

Most of us think that, is there any replacement for Microsoft Office but, Microsoft has its own market with its improved office 365. Please check below link for more information
http://www.whymicrosoft.com/see-why/enterprises-choose-office-365/

Tuesday, 11 November 2014

User Attributes in Active Directory

Click this link to download PDF which has all attributes information of Active Directory user objects.

For more information please follow this link


Thursday, 30 October 2014

Installing Windows Service with Command Prompt and Visual Studio Command Prompt

We can install windows service into Services on windows server with the help of InstallUtil.exe a
command line utility using 

1. Using Visual Studio Command Prompt 
2. Command Prompt

InstallUtil.exe is the command line utility which is installed with .Net frame work and its path is %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>

I. Using Visual Studio Command Prompt 
  1. On the Windows Start menu or Start screen, choose Visual Studio Visual Studio ToolsDeveloper Command Prompt.
    A Visual Studio command prompt appears.
  2. Access the directory where your project's compiled executable file is located.
  3. Run InstallUtil.exe from the command prompt with your project's executable as a parameter:
           installutil <yourproject>.exe