Som ny på ASP .NET (och webprogrammering överhuvudtaget) har jag undringar över vilken väg som är rätt att ta i följande situation: Tyvärr är det lite knepigt att vända processen där servern säger till klienten. Jag har själv funderat och frågat om just detta för agentens räkning men ingen hade någon bra lösning. Du får helt enkelt ha ett javascript som körs på timer och laddar om sidan. Däremot kan du ju lägga kräm på att hålla reda på vad du sist fick reda på och visade jämfört mot vad du får vid nästa anrop. Hmm.. det var mindre bra. Om du ska pusha så måste du ha någon komponent i din webbsida, t.ex. ActiveX, Java, Flash eller nåt annat som kan ligga aktivt. En vanlig .aspx, eller .asp, laddar innehållet från servern och ligger sedan hos klienten, det gör att de inte själva kan ta emot något nytt utan att laddas om, så sidan måste refreshas. Däremot så kanske du kan få ihop en lösning där ditt realtime data ändrar i en textfil på servern när datat ändras. Vad man kan göra då är att man cachar resultatet med en filedependency. När din .aspx sida refreshas så tar den resultatet från cachen, om cachen är tom så hämtar den från realtime. Eftersom cachen är filedependent så töms den när textfilen ändrats, dvs. fått en ny tidsstämpel. Eftersom webben ör stateless känner inte servern till denna om man inte gör ett program som har kontakt med servern hela tiden. Du kan ev köra refresh så som du troligen gör idag, men går mot en data som ligger i cache, denna data uppdaterar du så fort något hänt i databasen. Alltså bygga en egen SQLDependency hantering. Så fort data sparas körs en trigger som uppdaterar den data du hade i cache, på detta vis slipper du gå mot dbn vid varje refresh för att kolla om saker ändrats. Tackar för informationen. Då det hela skall köras i ett intranät kanske en winapp blir bättre än att försöka lösa problemet i asp .net då det uppenbarligen inte finns någon riktigt bra lösning. Men måste du få realtidsupdatering? Vad man än gör så kan ju datan postas om och ny data hämtas. Det händer väl inte så mkt uppdateringar i ett intranet så man måste få en push på klienten? Hejsan Informationen jag vill visa kommer från styrsystemen i en tillverkningsprocess. Jag vill samla in information från ett antal olika system (den biten är löst) och sedan presentera dessa på en websida. Status i processen ändras med variernde interval men uppdatering vill jag helst göra så snart som möjligt efter förändringen. Det är alltså tillstånd och mätvärden och liknande som skall visas. Jag håller precis på med detta och har använd Cache objektet, som uppdaterar datan i cahchen var tionde sekund (det är med de intervallerna som databasen uppdateras)Vilken är rätt väg att gå ?
Servern har tillgång till data som ändras i realtid av en yttre process. Dessa vill jag presentera på en websida. Jag vill helst dock bara uppdatera sidan när data verkligen har ändrats.
Just nu kör jag med page refresh men det skapar ju en massa onödig? trafik och onödiga läsningar från servern mot den yttre processen. Denna yttre process kan jag få att när data ändrats generera events t.ex. i en WinForm men går det att lösa det på något liknande sätt med WebForms och sedan pusha ut ändringen till sidan ?
Tacksam för tips om rätt angreppssätt.Sv: Vilken är rätt väg att gå ?
Så tyvärr finns det inte något riktigt bra svar eller lösning på ditt problem om jag uppfattade det rätt.Sv: Vilken är rätt väg att gå ?
En programvara vi tidigare representerade i Sverige had en lösning på detta (i ASP) som om jag uppfattat det rätt laddade en ocx till sidan och att denna ocx innehöll en server socket som sedan web-servern kunde pusha ut ändrade data till. Kan det ha varit på det sättet (jag har alltså inte sysslat med webprogrammering tidigare, därav frågan). Om så är fallet, är något liknande möjligt i .net (inte ocx alltså men principen).Sv: Vilken är rätt väg att gå ?
/pD
www.pdc.se
www.pdc.se/blog
www.patrik-dahlen.nuSv: Vilken är rätt väg att gå ?
I .Net 2.0 blir detta enklare då du kommer ha en SQLDependency Cache class, samt så kan man göra clinet callbakcs i 2.0an... Men den kommer inte i sin fulla verison förrän 2005 och en Beta 1 väntas komma i Juli eller Augusti.
Här har du en länk hur du idag kan bygga en enklare SQ:Dependency hantering.
http://www.dotnet247.com/247reference/a.aspx?u=http://www.dotnetjunkies.com/Tutorial/52D515C3-4322-4CFF-8AAB-3E0B2DC4B4B9.dcik
Mvh JohanSv: Vilken är rätt väg att gå ?
Sv: Vilken är rätt väg att gå ?
Mvh JohanSv: Vilken är rätt väg att gå ?
Det här är kanske en väg att gå ?
Windows-formulär på web...
http://msdn.microsoft.com/msdnmag/issues/02/07/NetSmartClients/
/JohanSv: Vilken är rätt väg att gå ?
Johan,
tack för länken. Skall undersökas snarast.Sv: Vilken är rätt väg att gå ?
Vet du vilka intervall som din db uppdateras, eller skiftar det från process till process?
Är det med tidsbestämda intervall skulle det ju gå om du väljer att uppdatera när din process uppdaterats