ASP.Net 2.0 vs. Safari Browser

B

Bill Cohagan

I'm having some serious difficulties with my ASP.Net 2.0 app rendering in
Safari 2.0.3. The most immediate problem is that the menu control doesn't
seem to work at all, particularly the use of dynamic levels.

I've Googled around a bit and determined that the problem is not so much
with Safari as it is with ASP.Net inaccurately determining the browser
capabilites for that browser. In the 2.0 Framework it appears that browser
caps are defined in *.browser files located in

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\Browsers

If I look there I don't find anything for a Safari browser at all. Also,
there are some references to controlAdapters in these files. I've found
references to an MSDN article, "Authoring ASP.NET Server Control Adapters -
An Introduction", but the link,

http://msdn.microsoft.com/library/en-us/dnaspp/html/ASPNET-AuthorSrvrCntrlAdapters.aspis dead.So, can anyone provide me with addtional information on how to obtain/createa safari.browser file and how to use the corresponding control adapters?Thanks in advance, Bill
 
J

Juan T. Llibre

re:
can anyone provide me with addtional information on how to obtain/create a safari.browser file

Check out : http://slingfive.com/pages/code/browserCaps/

The code you need to add is at :

http://slingfive.com/pages/code/browserCaps/browserCaps_spaces.txt

If you want to use 2.0-only features, you could use
that code to create a safari.browser file using that info.

See : http://msdn2.microsoft.com/en-us/library/ms228122.aspx

You can also just modify your web.config's browsercaps element.

Using the browserCaps element in the Web.config file to define
browsers is deprecated in the .NET Framework 2.0 but still supported.

The data in this element is merged with the information from the browser definition files.
 
B

Bill Cohagan

Juan
Thanks for the info and pointers. Sadly I'm still unable to solve the
problem. I've set up a browserCaps element as you (and the referenced
documents) suggested. I've confirmed that it is being used as I've
installed the browserCaps_spaces.txt code into my default.aspx page. So I
can see what ASP.Net thinks the browser's capabilities are.

So far so good. The problem is that the dynamic menus still do not work.
If I look at the html in the response (to Safari) I see that there are no
OnHover events wired up (for starters). I've tweaked the browserCaps to try
to "trick" ASP.Net into rendering that code just to determine what
capability is at fault. Thus far I've been unable to determine why (in terms
of capabilities) ASP.Net fails to render the expected code.

Any idea how to further troubleshoot this?

Thanks again,
Bill
 
B

Bill Cohagan

Juan
I've downloaded/installed a FireFox browser on one of our test machines
(miniMac) and it works fine with our ASP.Net 2.0 website, including the
dynamic menus. I've eyeballed the capabilites and they look pretty much
identical to those reported for Safari! So, now I'm really confused (unless
MS just has something against Apple browsers!)

I'm still interested in solving the problem of course, but the pressure is
a little lower since we have a fallback solution with FireFox.

Bill
 
J

Juan T. Llibre

re:
The problem is that the dynamic menus still do not work.

No tweaking you do will allow Safari to understand HTML it can't understand.

re:
The problem is that the dynamic menus still do not work. Thus far I've been unable to determine
why (in terms of capabilities) ASP.Net fails to render the expected code.

What the change to browsercaps does is allow ASP.NET to send Safari
HTML it should understand, but if Safari doesn't understand XHTML,
then sending it XHTML will not automagically make Safari understand it.

I am not too familiar with Safari's capabilities.
Is it capable of understanding XHTML ?






Bill Cohagan said:
Juan
Thanks for the info and pointers. Sadly I'm still unable to solve the problem. I've set up a
browserCaps element as you (and the referenced documents) suggested. I've confirmed that it is
being used as I've installed the browserCaps_spaces.txt code into my default.aspx page. So I can
see what ASP.Net thinks the browser's capabilities are.
 
J

Juan T. Llibre

The only difference I see between Safari and Firefox is that
Safari is based on the "AppleWebKit" while Firefox is not.

The capabilities, otherwise, seem identical.

This reinforces my earlier idea that the difference must
be whether Safari is capable of understanding XHTML.

If Firefox understands the dynamic menus ( XHTML-based, right ? )
and Safari doesn't, I can't think of anything else to pin the rendering difference on.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top