NaazMedlem sedan maj 200333 inlägg Hej!
Jag har en webapplikation i ASP.NET där användare ska kunna spara dokument i databasen. Användaren anger hur länge dokumentet ska vara gällande och visas för andra. Som extra feature ska webapplikationen skicka ett mail till alla användare vars dokument går ut om en vecka. Jag vill att i början av varje ny dag ska denna koll göras i databasen och mail skickas ut då det behövs.
Vad ska man skriva denna del i? C# eller javaskript? Annat? Har nån något kodförslag?
Det står helt still i mitt huvud för tillfället så jag hoppas att nån kan hjälpa mig.
Tack för hjälpen!
Mvh,
Naz
GladhMedlem sedan maj 20012 812 inlägg Detta skall inte göras allas med ASP.NET eftersom du inte kan lita på att din ASP.NET sida körs varje ny dag. Det finns flera vägar runt detta (de flesta dåligt) bland annat finns funktioner på nätet som kollar om din sida är uppe, alltså man frågar efter en sida på nätet varje dag, och eftersom sida körs när man frågar efter den så har din sida körts varje dag. Detta är dock en dålig lösning, eftersom linan kan gå ner, den andra server kan gå ner, det kan vara annat strul osv osv..
Sedan finns de 2 andra methoder att fördra, den ena bättre lämpad för just detta ändamål. Dessa 2 är en service som ligger i bakgrunden och varje dag kör en bit kod och att använda sig av windows inbyggda scheamläggare.
Den sista är helt klart bäst för det du vill gör. Så här gör du.
1. Skriver din kod i C#/VB.NET eller vad du vill. Denna kod gör allt du vil, kollar i databasen och skickar ut mail.
2. Skapar en event i din schemaläggare som kör detta program varje dag klockan 00.01.
Där har du den mest optimala lösningen på ditt problem.
- M
NaazMedlem sedan maj 200333 inlägg Hej och tack så jättemycket för hjälpen! :) Nu funkar programmet!
Mvh,
Naz
NaazMedlem sedan maj 200333 inlägg Hej!
Jag trodde att jag hade löst problemet men det hade jag tydligen inte! Jag har testat mailfunktionaliteten separat och det funkar som det ska. Men när funktionaliteten sätts ihop med min windowsservice händer det absolut ingenting. Jag försökte debugga programmet och det verkade som om den aldrig fick nåt svar från databasen.
Databasen är MS SQL Server som ligger på en annan dator i nätverket. Men webservern och windowsservices ligger båda på min lokala dator. Jag har satt
serviceInstaller.StartType = Automatic och
serviceProcessInstaller.Account = LocalSystem
Är det nåt fel med dessa properties? Varför händer inget?
Mvh,
Naz
GladhMedlem sedan maj 20012 812 inlägg Om du struntar i din windowsservice och startar programmet med hjälp av windowsschemaläggare istället. Det borde lösa ditt problem och är en bättre lösningen eftersom ditt program endast skall göras 1 ggr på dag.
En annan väg som jag inte tänkte på är att man låter SQL Server ta hand om alltting istället. Du kan skapa Jobs som körs när du vill. Dessa job kan sedan dra igång en SP som skickar iväg ett mail. Då har du nog den snyggast och bästa lösningen på ditt problem.
- M