Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeDNN Open Source...DNN Open Source...Provider and Extension ForumsProvider and Extension ForumsClientAPIClientAPIVladan Strigo offers a way to use MS Ajax in DNN controlsVladan Strigo offers a way to use MS Ajax in DNN controls
Previous
 
Next
New Post
2/22/2007 11:43 AM
 
Jon Henning wrote

The core is definitely working through the issues that arise trying to support the MS AJAX framework.  Here is a summary of what I know (and don't know) thus far.

1) ScriptManager (the component that makes all the MSAJAX functionality work) requires Full Trust to work in the bin folder.  You can get it to work in Partial Trust if you install it into the GAC.  Due to this issue it is going to be nearly impossible for DNN to completely integrate it into the core.  Any solution that is done will more than likely need to be Optional.



Yes this is a problem (for the most hosted implementations)... my biggest concern is that if it's not fully supported (and for obvious reasons it's not that easy) that module developers will stray from it. Simply because you can't leverage some of the biggest advantages easily. E.g.:

- if you use Ajax Client scripting (which is definetly a VERY strong thing) - you would need to write 2 versions of your scripts, one is for MS Ajax and the other for uncompatible version, so normal JS... this is often not feasble, not ROI friendly... and it will come down to not using it completly

- partial updates... a little simpler, but nevertheless complicated, you need to support both scenarios... if you have Script manager you can use UpdatePanel, if not you can't... often the "framework" code needed to support this will be abandonded.

And if developers don't use it for commercial modules.... a great big piece of the pie is dropped off (so to say :))

Jon Henning wrote

2) Even if we did make it not-optional, I do not think we could distribute the dll into our zip.  I may be wrong here, I am not good with legal stuff...  If this is true, then the DNN install would not simply work out of the "box".  I realize that some people will draw the analogy that this is just like needing the .NET framework and IIS... Personally, I don't feel that these are the same thing though.



I agree that in this version of the framework that is true... you cannot draw that analogy, but if we make it optional we can probably "survive" till the next version of .NET framework which will ship with it (although this is a pretty big decision to make)


Jon Henning wrote

3) I envision the core going the optional route.  This would be done by reflection, similar to our provider pattern.  I envision the core "registering" the ScriptManager on the page in a similar way that a developer registers a ClientAPI script.  The reason Vladan offers a separate dll httpmodule is he did not want to modify the core, this is a good approach, unless you can officially modify the core.  Hopefully this concept gives developers an idea on how it can be optionally included.



It would be good to have it possible (configurable) at installation, and at runtime (via host settings for example)... that way we would (an automatic procedure would) add/remove sections of webconfig (incl. a solution similar to my httpmodule) based on configuration, and use Ajax easily without reflection (of course counting on the concsious user which will not turn on the feature unless he has Ajax installed, or in bin with Full trust). You could also add a verfication procedure which at configuration, when the check to use Ajax is clicked via reflection verifies that it actually exists.... otherwise gives the user a proper message.

At one point I've had an idea to write a simple WinForms app which can do Ajax on/off in a DNN website (targetted site) based on verification if MS Ajax is installed or in bin (and enabled Full trust), but unfortunatly don't have time for that currently (as for many other ideas :()

On the other side... If not concious user is the way to go... you can maybe take a look at this great article from Eilon:

HOWTO: Write controls compatible with UpdatePanel without linking to the ASP.NET AJAX DLL


Jon Henning wrote

4) There is a major misunderstanding about MSAJAX that I am seeing.  People are confusing MS AJAX with the Control toolkit.  MS AJAX only has two or three controls included (UpdatePanel being the primary one).  The control toolkit is a community project, with its own release schedule.  If you think about it, you probably will see a lot of similarities to what I have created.  We have the ClientAPI, which is part of the DNN Framework.  MS has MS AJAX that will soon be a part of the .NET Framework.  We have the DNN WebControls, that utilize the ClientAPI framework to provide advanced GUI experiences.  MS has the Control Toolkit, that utilizes MS AJAX to provide nice experiences as well.  Right now, DNN ships both the AJAX Framework (ClientAPI) and the webcontrols with each release.  This eases the burdon of the module developers quite a bit.  Not only do we guarantee compatibility between releases but we also get to distribute it. The case for MS AJAX and the control toolkit will not be so easy. Some features will be integrated into the core like version checks for modules, but it is going to be a bumpy road at best (IMO).

I'm spending too much time on this post...  there is still much to discuss...  just need to find the time... hopefully this info sheds a little light on the subject.

I completly agree (and can confirm that based on 20 or so mails getting asked why doesn't the Control Toolkit work with my implementation, although it is only an implementation of MS Ajax), but one thing... toolkit controls cannot work without support of MS Ajax...



Thanks,
Vladan Strigo
NETMedia

My website: Vladan.Strigo.NET

Vladan.Strigo.NET: Projects
* Advanced VS2005 development approach - BlankModule
* DNN & Microsoft Ajax best practices guidance

Vladan.Strigo.NET: Resources
* Comprehensive list of DNN 4 Module development resources

 
New Post
2/22/2007 11:47 AM
 
mitchel.sellers@gmail.com wrote
 Vladan Strigo wrote
 mitchel.sellers@gmail.com wrote

I peronally tried this with my portal and it introduced a number of errors with my third party modules there were already installed and working therefore I was forced to remove it.

 

 


What kind of problems were you having? I am really interested to find out about the possible implications of my approach?

 

 

Well first of all I just want to note that most of my testing was with FireFox as I have a large user base that uses FireFox.

After installing your AJAX items I was no longer able to expand and contract any settings panels for ANY module that I tried.  Therefore I couldn't open module settings and other items.  Using a few third party controls that provide dynamic data sets if an action was completed on the page the dynamic content disappeared from the page and didn't come back.  I also received a number of "Strange" message box windows when browing my site.

I can't remember any other specifics as I was forced to back out the changes quickly as I couldn't work with a majority of the site.

I followed your instructions to the letter.  It did appear to work a bit better in IE, but I must have both IE and FieFox compatability for all of my sites so this was a deal breaker for me.

Too bad that you don't remember the details. I must admit this is the first info I've heared about them, but I will definetly check the concrete issues you've mentiond above to try to get the feeling of the problems. Thanks.

 


Thanks,
Vladan Strigo
NETMedia

My website: Vladan.Strigo.NET

Vladan.Strigo.NET: Projects
* Advanced VS2005 development approach - BlankModule
* DNN & Microsoft Ajax best practices guidance

Vladan.Strigo.NET: Resources
* Comprehensive list of DNN 4 Module development resources

 
New Post
2/22/2007 12:32 PM
 
mitchel.sellers@gmail.com wrote
 Vladan Strigo wrote
 mitchel.sellers@gmail.com wrote

I peronally tried this with my portal and it introduced a number of errors with my third party modules there were already installed and working therefore I was forced to remove it.

 

 


What kind of problems were you having? I am really interested to find out about the possible implications of my approach?

 

 

Well first of all I just want to note that most of my testing was with FireFox as I have a large user base that uses FireFox.

After installing your AJAX items I was no longer able to expand and contract any settings panels for ANY module that I tried.  Therefore I couldn't open module settings and other items.  Using a few third party controls that provide dynamic data sets if an action was completed on the page the dynamic content disappeared from the page and didn't come back.  I also received a number of "Strange" message box windows when browing my site.

I can't remember any other specifics as I was forced to back out the changes quickly as I couldn't work with a majority of the site.

I followed your instructions to the letter.  It did appear to work a bit better in IE, but I must have both IE and FieFox compatability for all of my sites so this was a deal breaker for me.

Mitchel,

Most likely it is not so much an issue with MS AJAX, but rather the need to change the DOCTYPE for the site.  This can have major consequences for controls expecting to render in quirks mode.  The issue with expand/collapse is documented here with a workaround.

 


 
New Post
2/22/2007 1:41 PM
 

Jon,

Thanks for the link, I might have to give this another try as I bet that was a big part of the issue.


-Mitchel Sellers
Microsoft MVP, ASPInsider, DNN MVP
CEO/Director of Development - IowaComputerGurus Inc.
LinkedIn Profile

Visit mitchelsellers.com for my mostly DNN Blog and support forum.

Visit IowaComputerGurus.com for free DNN Modules, DNN Performance Tips, DNN Consulting Quotes, and DNN Technical Support Services
 
New Post
2/22/2007 2:42 PM
 

Jon Henning wrote:

There is a major misunderstanding about MSAJAX that I am seeing.  People are confusing MS AJAX with the Control toolkit.  MS AJAX only has two or three controls included (UpdatePanel being the primary one).  The control toolkit is a community project, with its own release schedule. 

I can appreciate there must be great technical difficulties in making "standard" DNN4 and Ms Ajax compatible, but I would ask core members to bear in mind the power of the MS bandwagon.  The Ajax toolkit (which as you say is something different from MS Ajax) has several attractive controls as of today and will have many many more in 6 months' time.  Is it feasible to expect DNN developers to turn their back on this and wait for the ClientAPI to bring forth something similar (accordian panels, animation etc)?  I admire what you have done with ClientAPI so far, but you do not have the resources of the MS community behind you, nor ever will!

 

 

 
Previous
 
Next
HomeHomeDNN Open Source...DNN Open Source...Provider and Extension ForumsProvider and Extension ForumsClientAPIClientAPIVladan Strigo offers a way to use MS Ajax in DNN controlsVladan Strigo offers a way to use MS Ajax in DNN controls


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out