embedded winforms in IE wont cache

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

The problem is that when we embed a usercontrol in a html page the control is noty cached on the client as specified by numerous MSDN articles. I have tried everything i can find on trying to cache winform dll's in the assembly download cache. Is there something im doing wrong? Please Help! Our company is riding its entire future programming on .net. If anypne has any good sample code on something that works, or perhaps a fix, please let me know.

Is this a bug that will be fixed in framework 2.0? I hope so because we have a lot in our company riding on it.

Thanks, Bryan
 
have you examined the download cache? (gacutil /ldl ) You may have
multiple versions of your assembly there. If they list (0.0.0.0) as the
version then you have your answer: you haven't attached a version number to
your assembly:

eg,
[assembly:AssemblyVersion("x.y.z.w")]

Be sure to specify a full version, no *'s.


Hi Bryan,

It's really good to hear someone having the same problem (sorry to say) -
precisely the same problem is KILLING my released
application stone dead because of performance issues over low bandwidth
connections. I AGREE, the controls are NOT being
loaded from the download cache when available, and the documentation (I am
certain) INCORRECTLY says this will happen. I
have based many months of development based on this concept, believing the
documentation and suspecting it is me misreading
the signs or doing something wrong. I now no longer believe this to be the
case. Can someone out there at Microsoft help?
This is a real cry for help you're hearing here. Why are IE hosted
controls not being loaded from the download cache when
no newer versions are available on the server?

Please find attached similar posting (unanswered) from myself on the
sister windowsforms.controls newsgroup:
Subject: IE hosted control and the download cache 1/16/2004 3:47 AM PST

Hi,

Should my IE hosted Windows Control be invoked from the download cache after it's first use?

It appears that my Windows Control is being downloaded every time from the
Web Server. My understanding is that every time
a Windows Control is invoked from within an HTML <Object> tag, that the
CLR first checks on the server to see if there is a
new version of the assembly is available. If there is not, then the last
downloaded assembly will be invoked from the
download cache, if one exists. However, it appears that my control is
being download every time, and as available bandwidth
narrows, the control takes a REALLY long time to download/invoke, even
though I told my managers (perhaps mistakenly!) that
they will only experience this the first time they invoke a new version of
the component from the web server.
I had read that there may be a connection between strong naming an
assembly and the download cache, so that versioning can
work correctly, however I've just added a stong name to my assembly (by
adding [assembly: AssemblyKeyFile(@"....snk")] to
AssemblyInfo.cs) but it appears to have made no difference.

Should I be doing more to get my control invoked from a users download cache whenever possible?

Many thanks,
Richard Sheridan


----- bryan wrote: -----

The problem is that when we embed a usercontrol in a html page the
control is noty cached on the client as specified by numerous MSDN articles.
I have tried everything i can find on trying to cache winform dll's in the
assembly download cache. Is there something im doing wrong? Please Help! Our
company is riding its entire future programming on .net. If anypne has any
good sample code on something that works, or perhaps a fix, please let me
know.
Is this a bug that will be fixed in framework 2.0? I hope so because
we have a lot in our company riding on it.
 
it still doesnt work, i even tried strong naming. is there a way that microsoft uses that i am not? what versions of OS did microsoft develop this scenario on? I would really like to get in touch with as MS developer, maybe they dont even know it doesnt work??
 
I concur with Bryan. This is really important to us at NDS also. We've developed business critical applications based on this technology, believing in the mix of thick client code automated via HTML with a no-hassle deployment model - except that we can't (comfortably) use the app on dial-up or over low bandwidth WAN's because it appears the download cache isn't being used. This is terrible, and contrary to its documented behaviour. It is critical to us that Windows Form Components hosted within IE are loaded from Cache whenever possible; because the lack of performance is killing our applications reach.

The download cache appears to be correctly storing versions of downloaded assemblies; this can be seen using gacutil/ldl - but it is not using these; it always gets these from a server, every time. They are not at version 0.0.0.0.

Can someone at Microsoft confirm whether or not this is expected behaviour in .NET Framework 1.1, or is it a bug? Can I wait for a fix, am I missing something, or is this a feature that will remain unchanged - which will mean I will have to reengineer my apps'?

Many thanks,
Richard
 
I am glad i have a few people that agree with the symptoms. If someone at microsoft can help us that would be great.
 
Did anyone ever get a reply or find a solution to this?

I feel your pain, I'm having the same problem as well. The first time a .NET WinForm control loads in IE it's ridiculously slow. After that, each time that page is hit, it's fast, so I don't think it's my code. As soon as you exit out of IE and go back in, same thing, first time page is hit, takes up to 10 seconds for control to display.
 
Back
Top