<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Πρώτα Βήματα - Web Development</title><link>https://www.dotnetzone.gr:443/cs/forums/75/ShowForum.aspx</link><description>Ολα τα θέματα που σας απασχολούν σχετικά με ASP, ASP.NET αν τώρα επιχειρείτε να φτιάξετε την πρώτη σας σελίδα.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45650.aspx</link><pubDate>Tue, 21 Oct 2008 22:13:42 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45650</guid><dc:creator>AngelsGR</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45650.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45650</wfw:commentRss><description>παιδια οι απαντησεις σας μου ηταν πολυτιμες, σας ευχαριστω πολυ. Τελικα εκανα το εξης. Εφτιαξα μια aspx σελιδαμε το ονομα KeepSessionAlive.aspx&amp;nbsp; η οποια το μονο που εχει ειναι ο παρακατω κωδικας:&lt;br&gt;&lt;br&gt;&amp;nbsp; protected void Page_Load(object sender, EventArgs e) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Response.AddHeader("Refresh", Convert.ToString((Session.Timeout*60)-100));&lt;br&gt;&amp;nbsp; }&lt;br&gt;&lt;br&gt;και στην masterpage σελιδα μου εβαλα τον παρακατω κωδικα:&lt;br&gt;&lt;br&gt;&amp;lt;iframe id="Defib" height="0" width="0" src="KeepSessionAlive.aspx" frameborder="0" runat="server" /&amp;gt;&lt;br&gt;&lt;br&gt;με αυτον τον τροπο μπορω και κραταω το session alive!!&lt;br&gt;&lt;br&gt;</description></item><item><title>Απ: Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45640.aspx</link><pubDate>Tue, 21 Oct 2008 17:49:02 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45640</guid><dc:creator>Mitsaras</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45640.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45640</wfw:commentRss><description>Ανέφερα τον παραπάνω τρόπο γιατί θεωρώ ότι μάλλον είναι πιο lightweight από την χρήση AJAX/Web service, και δεν χρειάζεται να χρησιμοποιήσεις έξτρα html tags, ειδικά το IFRAME που θεωρείται πλέον deprecated σε XHTML. Φυσικά όλα αυτά έχουν σημασία σε sites με πολύ μεγάλη κίνηση.&lt;br&gt;&lt;br&gt;Τώρα, σε ό,τι αφορά την εικόνα, χρησιμοποιώντας &lt;br&gt;&lt;b&gt;Response.Cache.SetExpires(DateTime.Now.AddYears(-10))&lt;/b&gt; και&lt;b&gt;&lt;br&gt;Response.Cache.SetNoStore&lt;/b&gt;&lt;br&gt;το πρόβλημα του caching από τον browser παύει να υφίσταται.&lt;br&gt;</description></item><item><title>Απ: Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45637.aspx</link><pubDate>Tue, 21 Oct 2008 17:15:32 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45637</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45637.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45637</wfw:commentRss><description>Οτιδήποτε κλήση και να κάνει αρκεί. Αυτό που έχει σημασία είναι να δεχτεί ο server μία κλήση από το browser. Ο Mitsaras σου έδωσε ένα τρόπο αν και νομίζω ότι αν απλά καλείς μία οποιαδήποτε σελίδα αρκεί. Για εικόνα δεν είμαι σίγουρος γιατί μπορεί να παρεμβαίνει και η cache του browser.</description></item><item><title>Απ: Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45629.aspx</link><pubDate>Tue, 21 Oct 2008 09:31:11 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45629</guid><dc:creator>Mitsaras</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45629.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45629</wfw:commentRss><description>Να η δική μου low overhead λύση:&lt;br&gt;&lt;br&gt;1. BLOCKED SCRIPT&lt;br&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr style="vertical-align:top;line-height:normal;"&gt;&lt;td style="width:40px;text-align:right;"&gt;&lt;pre style="margin:0px;padding:2px;font-family:courier new;font-size:11px;color:gray;"&gt;1&lt;br&gt;2&lt;br&gt;3&lt;br&gt;4&lt;br&gt;5&lt;br&gt;6&lt;br&gt;7&lt;br&gt; &lt;/pre&gt;&lt;/td&gt;&lt;td&gt;&lt;pre style="margin:0px;padding:2px 2px 2px 8px;"&gt;&lt;span style="color:Black;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;window.setTimeout('retainSession()', &lt;/span&gt;&lt;span style="color:Black;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;240&lt;/span&gt;&lt;span style="color:Black;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt; &lt;span style="color:Red;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;*&lt;/span&gt; 1000);&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;function&lt;/span&gt; retainSession() {&lt;br&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;var&lt;/span&gt; img &lt;span style="color:Red;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; new Image(1, 1);&lt;br&gt;&amp;nbsp;&amp;nbsp;img.src &lt;span style="color:Red;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; '/Components/SessionRetainer.ashx';&lt;br&gt;&amp;nbsp;&amp;nbsp;window.setTimeout('retainSession()', 240 &lt;span style="color:Red;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;*&lt;/span&gt; 1000);&lt;br&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br&gt;2. Το SessionRetainer είναι ένας απλούστατος IAsyncHttpHandler ο οποίος υλοποιεί επίσης και το IReadOnlySessionState, και δεν επιστρέφει τίποτα, αλλά θέτει το Response.Cache σε non-cacheable (αλλιώς o browser δεν θα καλέσει τον handler πάνω από μία φορά).&lt;br&gt;&lt;br&gt;3. Το javascript καλεί τον handler κάθε 4 λεπτά, ενώ το session expiration από το web.config είναι ορισμένο στα 5 λεπτά. &lt;br&gt;</description></item><item><title>Απ: Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45600.aspx</link><pubDate>Mon, 20 Oct 2008 20:51:35 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45600</guid><dc:creator>AngelsGR</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45600.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45600</wfw:commentRss><description>&lt;p class="MsoNormal"&gt;Έχω φτιάξει μια σελίδα στην οποία ο χρήστης μπαίνει μέσα και
γράφει το δικό του κείμενο. Κάποιοι κάνουν περισσότερο απο 20 λεπτά να γράψουν
το κείμενο τους και επειδή έχει πέσει το &lt;span&gt;session&lt;/span&gt;&lt;span&gt; &lt;/span&gt;χάνω το &lt;span&gt;User&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ID&lt;/span&gt;&lt;span&gt; &lt;/span&gt;και
αποτυγχάνει μετά το &lt;span&gt;sql&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;post&lt;/span&gt;&lt;span&gt; &lt;/span&gt;που γίνεται. Μήπως κακός κρατάω το &lt;span&gt;User&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ID&lt;/span&gt;&lt;span&gt; &lt;/span&gt;στο
&lt;span&gt;session&lt;/span&gt;? Αν όχι, τότε ο
&lt;span&gt;timer&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;control&lt;/span&gt;&lt;span&gt; &lt;/span&gt;τι
είδους κλήση θα πρέπει να κάνει στον &lt;span&gt;server&lt;/span&gt;? Θα πρέπει να έχω μια &lt;span&gt;dummy&lt;/span&gt;&lt;span&gt; &lt;/span&gt;ρουτίνα στον &lt;span&gt;server&lt;/span&gt;&lt;span&gt; &lt;/span&gt;που απλά
θα την καλώ??&lt;/p&gt;</description></item><item><title>Απ: Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45599.aspx</link><pubDate>Mon, 20 Oct 2008 18:12:25 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45599</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45599.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45599</wfw:commentRss><description>&lt;P&gt;Το session κρατάει για 20 λεπτά και μπορείς να αλλάξεις τη διάρκεια του μέχρι 1 χρόνο. Θέλεις όμως πραγματικά να κρατήσεις ένα session ανοικτό για παραπάνω από 20 λεπτά? Κι αν ο χρήστης σηκωθεί και φύγει? Αν χάσει τη σύνδεση του? Θα παραμείνει ανοικτό το session?&lt;/P&gt;
&lt;P&gt;Αν θέλεις&amp;nbsp;πάντως να έχεις μικρό timeout αλλά να διατηρείται το session όσο ο browser είναι ανοικτός θα πρέπει κάπως να κάνεις κλήσεις από το browser στο server. Αυτό μπορεί να γίνει με διάφορους τρόπους. Μπορείς σε ένα κρυφό IFrame να δείχνεις μία dummy σελίδα η οποία όμως έχει ορισμένο ένα μικρό refresh timeout. Μπορείς να φτιάξεις ένα AJAX timer control το οποίο θα κάνει το ίδιο για ένα update panel. Μπορείς ακόμα και να καλείς με Javascript ένα web service στο server &lt;img src="http://www.dotnetzone.gr/cs/emoticons/emotion-4.gif" alt="Stick out tongue" /&gt;&lt;/P&gt;</description></item><item><title>Keep session alive</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45596.aspx</link><pubDate>Mon, 20 Oct 2008 17:33:24 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45596</guid><dc:creator>AngelsGR</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45596.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=75&amp;PostID=45596</wfw:commentRss><description>&lt;p class="MsoNormal"&gt;Θέλω να κρατάω κάποιες τιμές στο &lt;span&gt;session&lt;/span&gt;&lt;span&gt; &lt;/span&gt;της σελίδας
μου αλλά μετά από κάποιο χρονικό διάστημα το &lt;span&gt;session&lt;/span&gt;&lt;span&gt; &lt;/span&gt;χάνει τις τιμές του. Πως μπορώ να
κρατάω το &lt;span&gt;session&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;alive&lt;/span&gt;,
είτε μέχρι να κλείσει ο &lt;span&gt;browser&lt;/span&gt;&lt;span&gt; &lt;/span&gt;είτε μέχρι να φύγει από την σελίδα μου??&lt;/p&gt;</description></item></channel></rss>