Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > ASP .Net Mobile > Session Object & Link Navigation

Reply
Thread Tools

Session Object & Link Navigation

 
 
Alex Maghen
Guest
Posts: n/a
 
      05-22-2007
I'm building an ASP.NET Mobile Web application that uses Session. Because I
am also doing FormsAuthentication, I've set up my Web.Config with certain
settings I read I should use. It looks like:

<system.web>
<compilation debug="true"/>
<authentication mode="Forms">
<forms loginUrl="~/Login/Default.aspx"
name="HomoMoAuth" timeout="10" path="/">
</forms>

</authentication>
<authorization>
<allow users="*"/>
</authorization>

<sessionState
mode="InProc" cookieless="true" timeout="20"
/>

<httpRuntime useFullyQualifiedRedirectUrl="true" />

<mobileControls
cookielessDataDictionaryType="System.Web.Mobile.Co okielessData" />

</system.web>


ANYWAY, here's my problem: It seems that, maybe, because of the
"useFullyQualifiedRedirectUrl" or something, I can't really use the "~" in my
Link Paths. If I do, I loose my Session object. Can someone help me
understand how/if I can still use the "~"? I like it!
 
Reply With Quote
 
 
 
 
Walter Wang [MSFT]
Guest
Posts: n/a
 
      05-23-2007
Hi Alex,

It's related to the cookieless session:

<quote>
#ASP.NET Web Site Paths
http://msdn2.microsoft.com/en-us/library/ms178116.aspx
Note

For mobile pages only, if your application relies on cookieless sessions or
might receive requests from mobile devices that require cookieless
sessions, using a tilde ("~") in a path can result in inadvertently
creating a new session and potentially losing session data. To set a
property on a mobile control with a path that includes a tilde (such as
"~/path"), resolve the path using the ResolveUrl method before assigning it
to the property.
</quote>

Hope this helps.


Regards,
Walter Wang ((E-Mail Removed), remove 'online.')
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.

 
Reply With Quote
 
 
 
 
Alex Maghen
Guest
Posts: n/a
 
      06-01-2007
Walter -

Thanks for this. It *does* seem to improve things somewhat. Now I have
another related question: Let's say I want to create my own Link control
which will automatically perform this ResolveUrl() function and also will do
some other things to alter the standard <mobile:link> control. If my new
control is defined as

public partial class AxMobileLink : System.Web.UI.MobileControls.Link

Is there a way that I can sort of automatically support all of the
properties and methods exposed by the constituent <mobile:Link? without
writing my own proerty and function overriding each one which does nothing
but call the base?

Ax




"Walter Wang [MSFT]" wrote:

> Hi Alex,
>
> It's related to the cookieless session:
>
> <quote>
> #ASP.NET Web Site Paths
> http://msdn2.microsoft.com/en-us/library/ms178116.aspx
> Note
>
> For mobile pages only, if your application relies on cookieless sessions or
> might receive requests from mobile devices that require cookieless
> sessions, using a tilde ("~") in a path can result in inadvertently
> creating a new session and potentially losing session data. To set a
> property on a mobile control with a path that includes a tilde (such as
> "~/path"), resolve the path using the ResolveUrl method before assigning it
> to the property.
> </quote>
>
> Hope this helps.
>
>
> Regards,
> Walter Wang ((E-Mail Removed), remove 'online.')
> Microsoft Online Community Support
>
> ==================================================
> When responding to posts, please "Reply to Group" via your newsreader so
> that others may learn and benefit from your issue.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no rights.
>
>

 
Reply With Quote
 
Alex Maghen
Guest
Posts: n/a
 
      06-02-2007
Walter -

I am now confused a little further. Let's say I want to place two links on a
Mobile form with the Web.config settings I defined below. The links are as
follows:

1. ~/Default.aspx
2. SomeFolder/Default.aspx

You recommended that I user ResolveURL() on these paths before placing them
in the NavigateURL field of the <mobile:Link> control. The problem is, if I
do that for #1 above, it works fine. But if I do it for #2, it doesn't behave
properly. How am I supposed to know when to use ResolveURL and when now?

Alex


"Alex Maghen" wrote:

> Walter -
>
> Thanks for this. It *does* seem to improve things somewhat. Now I have
> another related question: Let's say I want to create my own Link control
> which will automatically perform this ResolveUrl() function and also will do
> some other things to alter the standard <mobile:link> control. If my new
> control is defined as
>
> public partial class AxMobileLink : System.Web.UI.MobileControls.Link
>
> Is there a way that I can sort of automatically support all of the
> properties and methods exposed by the constituent <mobile:Link? without
> writing my own proerty and function overriding each one which does nothing
> but call the base?
>
> Ax
>
>
>
>
> "Walter Wang [MSFT]" wrote:
>
> > Hi Alex,
> >
> > It's related to the cookieless session:
> >
> > <quote>
> > #ASP.NET Web Site Paths
> > http://msdn2.microsoft.com/en-us/library/ms178116.aspx
> > Note
> >
> > For mobile pages only, if your application relies on cookieless sessions or
> > might receive requests from mobile devices that require cookieless
> > sessions, using a tilde ("~") in a path can result in inadvertently
> > creating a new session and potentially losing session data. To set a
> > property on a mobile control with a path that includes a tilde (such as
> > "~/path"), resolve the path using the ResolveUrl method before assigning it
> > to the property.
> > </quote>
> >
> > Hope this helps.
> >
> >
> > Regards,
> > Walter Wang ((E-Mail Removed), remove 'online.')
> > Microsoft Online Community Support
> >
> > ==================================================
> > When responding to posts, please "Reply to Group" via your newsreader so
> > that others may learn and benefit from your issue.
> > ==================================================
> >
> > This posting is provided "AS IS" with no warranties, and confers no rights.
> >
> >

 
Reply With Quote
 
Walter Wang [MSFT]
Guest
Posts: n/a
 
      06-04-2007
Hi Alex,

Please try following approach:

public class Class1 : Link
{
protected override void OnPreRender(EventArgs e)
{
NavigateUrl = Page.ResolveUrl(NavigateUrl);
base.OnPreRender(e);
}
}


Using this customized Link control will make sure it calls ResolveUrl
before displaying the hyperlink.

Let me know if this works for you.


Regards,
Walter Wang ((E-Mail Removed), remove 'online.')
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Disable the navigation buttons for IE navigation toolbar Laurahn ASP .Net 3 02-06-2007 04:17 AM
Stored Session object is mixed up with another user's session object. momo898 ASP .Net 2 10-12-2006 03:33 PM
Object creation - Do we really need to create a parent for a derieved object - can't the base object just point to an already created base object jon wayne C++ 9 09-22-2005 02:06 AM
RE: Link Link Link =?Utf-8?B?REw=?= Windows 64bit 0 05-17-2005 12:15 PM
Re: Link Link Link DANGER WILL ROBINSON!!! Kevin Spencer ASP .Net 0 05-17-2005 10:41 AM



Advertisments