Wednesday, October 17, 2012

Clone Generic List in C# using an Extension method

Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://XploreSqlServer.blogspot.com/
   
Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Explore the Top Microsoft Blazor Technical/ Interview Questions here: https://XploreBlazor.blogspot.com/

See below the plain readable code for cloning a generic collection in C#:

namespace Org.Project.Common
{
  using System;
  using System.Collections.Generic;
   public static class CloneableExtension
   {
     public static IList<T> Clone<T>(this IList<T> list) where T : ICloneable
     {
        IList<T> clonedList;
        clonedList = new List<T>();
        foreach (T cloneable in list)
        {
          object clonedObj = cloneable.Clone();
          clonedList.Add((T)clonedObj);
        }
        return clonedList;

     }
  }
  
}

The method extends all collections that implements IList but returns instance of List always.
The objects of type T that the list consists of should implement ICloneable interface.

Here is another stylish implementation using LINQ:

namespace Org.Project.Common{
  using System;
  using System.Collections.Generic;
  using System.Linq;
  public static class CloneableExtension
  {
   public static IList<T> Clone<T>(this IList<T> list) where T : ICloneable
   {     return list.Select(item => (T)item.Clone()).ToList();    }
  }
}


Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://XploreSqlServer.blogspot.com/
   
Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Tuesday, October 16, 2012

Show Anchor as a Button using JQuery UI

Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://XploreSqlServer.blogspot.com/
   
Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Explore the Top Microsoft Blazor Technical/ Interview Questions here: https://XploreBlazor.blogspot.com/


1. Add reference to jQuery UI javascript file and CSS file along with JQuery javascript file:


<
script src="jquery-1.8.2.js" type="text/javascript"></script>

<
link href= "ui/1.9.0/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<
script src="ui/1.9.0/jquery-ui.js" type="text/javascript"></script>


Download the recent version of jQuery and jQuery UI javascript files and themes from here:

jQuery: http://jquery.com/download/
jQuery UI: http://jqueryui.com/download/


2. Add the following script block:



<
script type="text/javascript">
        $(function () {
          $("#lnkSave").button();
        });

</
script>

The above script would show the following anchor tag

<a id="lnkSave" > Save </a>

look like this button :


The color and font of the button is based on the theme downloaded.



3. Specify the parameter value to button() method in case an icon needs to be displayed along with  text:


<
script type="text/javascript">
 
$(function () {
          $("#lnkSave").button({ icons: { primary: 'ui-icon-check'} });
 });


</
script>

The above script would show the anchor as a button with a check mark icon:




Refer jquery-ui.css for the list of supported icons.

Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://XploreSqlServer.blogspot.com/
   
Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Saturday, October 13, 2012

Create Property Procedures quickly using Code Snippets in Visual Studio


Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://Xplore2WinSqlServer.blogspot.com/
   
Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Explore the Top Microsoft Blazor Technical/ Interview Questions here: https://XploreBlazor.blogspot.com/

The following predefined code snippets are available in Visual Studio for easy generation of a property inside the code window:

1. Type prop and press tab key twice to generate the following automatic property snippet:

public int MyProperty { get; set; }


2. Type propfull and press tab key twice to generate the following property code snippet with a private variable:

private int myVar;
 
public int MyProperty
{
       get { return myVar; }
       set { myVar = value; }
}



3. Type propg and press tab key twice to generate the following property code snippet with a public getter and private setter:

public int MyProperty { get; private set; }

Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://Xplore2WinSqlServer.blogspot.com/

 Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Friday, October 12, 2012

Create a Read-only Textbox using ASP.NET MVC Html Helper

Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://XploreSqlServer.blogspot.com/
   
Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com

Explore the Top Microsoft Blazor Technical/ Interview Questions here: https://XploreBlazor.blogspot.com/

The following razor code nugget creates a read only textbox with the Id, txtCity and the value, "Chennai" :

                 @Html.TextBox("txtCity", "Chennai", new { @readonly = "readonly" })

The nugget generates the following HTML:

                 <input id="txtCity" name="txtCity" readonly="readonly" type="text" value="Chennai" />

The following nugget is to create a read only textbox bound to the model property, City :

       @Html.TextBoxFor(model => model.City, new { @readonly = "readonly" })



Explore the Top Microsoft SQLServer Technical/ Interview Questions here: http://XploreSqlServer.blogspot.com/

Explore the Top Microsoft C# Technical/ Interview Questions here: http://XploreCSharpDotNet.blogspot.com