About the author

Imran Imran
Like Development in DotNet.

E-mail me Send mail

Recent Articles

 
1: Roles And Membership
Category: ASP.Net
Added: 6/2/2008

 
2: ListView and DataPager in ASP.NET 3.5
Category: ASP.Net
Added: 5/15/2008

 
3: Asp.Net Cookies
Category: ASP.Net
Added: 5/8/2008

 
4: DatagridDatalistRepeater
Category: ASP.Net
Added: 5/8/2008

 
5: mySql With Asp.Net
Category: Databases
Added: 4/16/2008

 
6: MDF without LDF
Category: Databases
Added: 4/16/2008

 
7: Disable Right Click
Category: Java Script
Added: 4/16/2008

 
8: String Functions
Category: ASP.Net
Added: 3/20/2008

 
9: Water Mark
Category: HTML & DHTML
Added: 3/20/2008

 
10: Ajax With Javascript
Category: AJAX
Added: 3/10/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