About the author

Imran Imran
Like Development in DotNet.

E-mail me Send mail
Search Entire Web

Recent Articles

 
1: Master Pages
Category: ASP.Net
Added: 1/31/2008

 
2: Caching with ASP.NET
Category: ASP.Net
Added: 1/31/2008

 
3: Free Microsoft Press E-Book Offer!
Category: ASP.Net
Added: 1/30/2008

 
4: Timer Control in Asp.Net
Category: ASP.Net
Added: 1/29/2008

 
5: Checkbox selection with ajax
Category: ASP.Net
Added: 1/29/2008

 
6: UrlRewriter with asp.net
Category: ASP.Net
Added: 1/19/2008

 
7: Auto complete textbox with Ajax
Category: ASP.Net
Added: 1/15/2008

 
8: Upload file with Asp.Net
Category: ASP.Net
Added: 1/15/2008

 
9: User Rating Technique
Category: ASP.Net
Added: 1/8/2008

 
10: Encryption And Decryption Library
Category: ASP.Net
Added: 1/5/2008

User Rating Technique

by Imran 08/January/2008

First of all create a table which have value RatingID and your content id like in my logic SiteID like Comments then create a stored procedure like

CREATE PROCEDURE Q_GetRatingInfo(@SiteID int) AS

SELECT

(SELECT COUNT(*) FROM Comments WHERE SiteID = @SiteID AND RatingID = 1) as Rating1Count,

(SELECT COUNT(*) FROM Comments WHERE SiteID = @SiteID AND RatingID = 2) as Rating2Count,

(SELECT COUNT(*) FROM Comments WHERE SiteID = @SiteID AND RatingID = 3) as Rating3Count,

(SELECT COUNT(*) FROM Comments WHERE SiteID = @SiteID AND RatingID = 4) as Rating4Count,

(SELECT COUNT(*) FROM Comments WHERE SiteID = @SiteID AND RatingID = 5) as Rating5Count,

ISNULL((SELECT AVG(CONVERT(float, RatingID)) FROM Comments WHERE SiteID = @SiteID), 0.0) as AvgRating,

(SELECT COUNT(*) FROM Comments WHERE SiteID = @SiteID) as RatingCount

GO

then create a function AvgRating

Public Function AvgRating(ByVal SiteID As Integer) As Decimal

Dim con As New SqlConnection(myConStr)

con.Open()

Dim avgrate As Decimal

Dim myCommand As SqlCommandmyCommand = New SqlCommand("Q_GetRatingInfo", con)

myCommand.CommandType = CommandType.StoredProcedure

myCommand.Parameters.AddWithValue("@SiteID", SiteID)

Dim reader As SqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)

If reader.Read Then

avgrate = Convert.ToSingle(reader("AvgRating"))

End If

con.Close()

Return avgrate

End Function





Powered by DotNetClassic.com