Using System.Diagnostics.PerformanceCounter in Silverlight

Hi,

I have a silverlight guage which is a 360 dial and in my page.xaml.vb file i setup a Dispatchtimer which calls a function every 1 second .. this updates the dial's value property and that is working fine...

Now i want to pass the cpu usage value to the dial  (im trying to create a server dashboard)...
Now - on a normal webpage i managed to get the cpu usage displayed using the code below.

Note that when i copy this code into the page.xaml.vb file ...  i get a msg "Type PerformanceCounter is not defined"

How would I do this?
Imports System.Diagnostics
 
...
 
Private m_Performance As PerformanceCounter = New PerformanceCounter("Processor", "% Processor Time", "_Total")
 
        MsgBox(Me.m_Performance.NextValue().ToString)
        Threading.Thread.Sleep(300)
        MsgBox(Me.m_Performance.NextValue().ToString)
        Threading.Thread.Sleep(300)
        MsgBox(Me.m_Performance.NextValue().ToString)
        Threading.Thread.Sleep(300)

Open in new window

LVL 3
PierreBeukesAsked:
Who is Participating?
 
aweileeCommented:
This code doesn't work because you cannot access performance counters from your Silverlight application. Anyway, even if you could, remember that Silverlight code is running on the client side, not server side like ASP.NET so you would get the CPU usage on the client machine, not on the server. Not what you want, right?

So what do you need to do? Create a simple Web Service (or WCF service) on the ASP.NET Server, and place your above code inside. Call it from your Silverlight application and place the result inside your gauge. Done.
0
 
PierreBeukesAuthor Commented:
aaah yes ... it runs on client - my bad :)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.