Är det någon som har fått ordning på detta? Börjar med att säga att jag är rätt novis på SQL Server, har pysslat med MySQL mestadels tidigare. Det som ska köras är invalidation cachning mot servern via en webbapplikation. Har inte jobbat med detta än men kan gissa på ett par saker.asp.net 2.0 och sql server 2005 cachning - hjälp!
Jag har via aspnet_regsql registrerat mina tabeller för SQL Cache notification och när jag kör:
aspnet_regsql.exe -S "Servernamn" -lt -d "Databas" -E
så får jag upp tabellerna korrekt.
Jag har lagt till följande i web.config:
<connectionStrings>
<add name="MainDB" connectionString="server=DTM\SQLEXPRESS;database=DB;UID=sa;PWD=asdf"/>
</connectionStrings >
<system.web>
<caching>
<sqlCacheDependency enabled="true">
<databases>
<add
name="DB"
connectionStringName="MainDB"
pollTime="60000" />
</databases>
</sqlCacheDependency>
</caching>
</system.web>
Och detta i .aspx filen:
<%@ OutputCache Duration="60000" SqlDependency="DB:tblArtList" VaryByParam="none" %>
Databasen heter DB och tabellen heter tblArtList (listar även den som det vid aspnet_regsql) men ändå får jag följande fel:
Server Error in '/alinav20backup/Backup/alinav20' Application.
--------------------------------------------------------------------------------
The 'tblArtList' table in the database 'DB' is not enabled for SQL cache notification.
Please make sure the table exists, and the table name used for cache dependency matches exactly the table name used in cache notification registration.
To enable a table for SQL cache notification, please use SqlCacheDependencyAdmin.EnableTableForNotifications method, or the command line tool aspnet_regsql. To use the tool, please run 'aspnet_regsql.exe -?' for more information.
To get a list of enabled tables in the database, please use SqlCacheDependencyManager.GetTablesEnabledForNotifications method, or the command line tool aspnet_regsql.exe.
Är det någon som har några idéer, jag börjar snart riva hår...
Hoppas på hjälp!
MVH
Daniel
Sv: asp.net 2.0 och sql server 2005 cachning - hjälp!
1. Du kanske måste aktivera nåt mer i SQL servern (det är väl nån service som måste kickas igång t.ex)
2. Eller så vill den ha hela namnet även med owner/schema
typ Database.dbo.Table1
eller nåt i den stilen..