Friday, April 16, 2010

Always Visible pager header/footer

I put it in PreRender event:

    protected void GridView5_PreRender(object sender, EventArgs e)


        GridView grid = (GridView)sender;

        if (grid != null)


            GridViewRow pagerRow = (GridViewRow)grid.TopPagerRow;

            if (pagerRow != null)


                pagerRow.Visible = true;





Tuesday, April 13, 2010

SQL SERVER - @@IDENTITY vs SCOPE_IDENTITY() vs IDENT_CURRENT - Retrieve Last Inserted Identity of Record

It returns the last IDENTITY value produced on a connection, regardless of the table that produced the value, and regardless of the scope of the statement that produced the value.
@@IDENTITY will return the last identity value entered into a table in your current session. While @@IDENTITY is limited to the current session, it is not limited to the current scope. If you have a trigger on a table that causes an identity to be created in another table, you will get the identity that was created last, even if it was the trigger that created it.

It returns the last IDENTITY value produced on a connection and by a statement in the same scope, regardless of the table that produced the value.
SCOPE_IDENTITY(), like @@IDENTITY, will return the last identity value created in the current session, but it will also limit it to your current scope as well. In other words, it will return the last identity value that you explicitly created, rather than any identity that was created by a trigger or a user defined function.

It returns the last IDENTITY value produced in a table, regardless of the connection that created the value, and regardless of the scope of the statement that produced the value.
IDENT_CURRENT is not limited by scope and session; it is limited to a specified table. IDENT_CURRENT returns the identity value generated for a specific table in any session and any scope.

To avoid the potential problems associated with adding a trigger later on, always use SCOPE_IDENTITY() to return the identity of the recently added row in your T SQL Statement or Stored Procedure.

Reference : Pinal Dave (


Friday, April 2, 2010

Blog Engine:- A C# based blog engine

Sites for Video Tutorials

Creating Themes with BlogEngine.Net Screencast

You can see how to create a BlogEngine Theme here

more about "Creating Themes with BlogEngine.Net S...", posted with vodpod

Thursday, April 1, 2010

Gridview examples with Custom Pager template

Thumbnail creation using C#

You can simply create a thumbnail using following code:-


private void CreateThumbNail(string fileName)


            // create an image object for source file

            System.Drawing.Image image = System.Drawing.Image.FromFile(fileName);

            // get another image instance using GetThumbnailImage method  NOTE:- A CALLBACK DELEGATE IS NEED HERE

            System.Drawing.Image thumbNail = image.GetThumbnailImage(100, 100, new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);

            // Save the thumbnail to another directory with same name

            fileName = fileName.Replace("\\gallery500\\", "\\thumbnail\\");

            // Create a file stream to be passed to thumbnail save method

            System.IO.FileStream fs = new FileStream(fileName, FileMode.Create);

            // Save the thumbnail

            thumbNail.Save(fs, System.Drawing.Imaging.ImageFormat.Jpeg);

            // close file stream



        public bool ThumbnailCallback()


            return true;


Query to extract extension of files

Do you want to extact your file extension. Do it using SQL! As follow:-


SELECT Collection.Item_No,

'~/ThumbNail/' + substring(Imagefile,0,CHARINDEX('.',Imagefile,0))  + '_thumb' + substring(Imagefile,CHARINDEX('.',Imagefile,0),len(Imagefile))  ThumbNail,

'this.src=''' +  'Gallery/' + ImageFile + '''' MouseOver,

'this.src=''' +  'ThumbNail/' + substring(Imagefile,0,CHARINDEX('.',Imagefile,0))  + '_thumb' +

substring(Imagefile,CHARINDEX('.',Imagefile,0),len(Imagefile)) + '''' MouseOut,

Collection.Title, Artist.[Artist Name] AS Artist, Category.Name AS Category, Media.Media, Surface.Surface_name as Surface, styles.style_name as Style FROM Collection INNER JOIN Artist ON Collection.Artist = Artist.ID INNER JOIN Category ON Collection.cat_id = Category.ID INNER JOIN Media ON Collection.Media = Media.ID INNER JOIN Surface ON Collection.Surface = Surface.ID INNER JOIN styles ON = styles.ID