Cache a user control based on a Property in the code behind.

Ask a Question related to ASP.NET Building Controls, Design and Development.

  1. #1

    Default Cache a user control based on a Property in the code behind.

    I have a user control that is placed on every page to provide a menu system,
    logout/login buttons etc.

    This contect varies in depending on the value of a property in the code
    behind file of the control.

    How can I cache dependant on the value of that property.

    TIA

    MattC


    MattC Guest

  2. Similar Questions and Discussions

    1. Set property in user control
      I have a user control where I defined a boolean property. I tried to pass the property the following way: <aaa:MyControl runat="server" id="stan"...
    2. Web user control creation - Resolve an ImageUrl property if control themed
      Hi I'm creating a WebControl which has a themeable ImageUrl property : <Bindable(True), Category("Appearance"),...
    3. Modifying a property of a control contained in a user control
      I have a user control that is made up of several HyperLink controls. In the Page_Load event of pages that use the control I want to change a...
    4. Can you set a default property for a user control?
      I'm not even sure if what I'm doing is possible. I created a simple control that will be reused throughout the site. It will accept a large amount...
    5. No cache on User Control?
      My user control needs to update each time it's displayed but I can't find a way to either issue a directive so the user control info is not cached...
  3. #2

    Default Re: Cache a user control based on a Property in the code behind.

    You can use output caching and use varybycontrol to base the cache on
    the value of a property of the usercontrol. Also take a look at the
    quickstarts, or any other kind of documentation, because they describe
    these kind of things very well:
    [url]http://samples.gotdotnet.com/quickstart/aspplus/doc/fragmentcaching.aspx[/url].

    Wilco Bauwer Guest

  4. #3

    Default Re: Cache a user control based on a Property in the code behind.

    This only gives examples of caching based on properties in the ASPX page I
    would like to know if I can cache based on the value of a Code Behind
    Property.
    "Wilco Bauwer" <wilcob@gmail.com> wrote in message
    news:1109186620.680828.171100@z14g2000cwz.googlegr oups.com...
    > You can use output caching and use varybycontrol to base the cache on
    > the value of a property of the usercontrol. Also take a look at the
    > quickstarts, or any other kind of documentation, because they describe
    > these kind of things very well:
    > [url]http://samples.gotdotnet.com/quickstart/aspplus/doc/fragmentcaching.aspx[/url].
    >

    MattC Guest

  5. #4

    Default Re: Cache a user control based on a Property in the code behind.

    I have managed to cache based on a code behind property now but it seems to
    not work how I would expect. I have this in my control.
    <%@ OutputCache VaryByControl="UserType" Duration="300"%>

    in my code begind is a property:

    protected string UserType
    {
    get
    {
    if(SecurityHandler.ThisUser != null)
    _usertype =
    SecurityHandler.ThisUser.UserSecurityProfile.Secur ityProfileName;

    return _usertype;
    }
    }

    UserType will return either Admin, String.Empty, Finance, User.

    However when I visit a page it is cached but if I log out and log in as an
    account with a different usertype i get the cached copy for the previous
    user type, instead of what I expected was ASP.NET to cache a new version for
    the new type. It seems the cache the control by the page not by the value
    in the property.

    TIA

    MattC

    "MattC" <m@m.com> wrote in message
    news:%23pVC8KlGFHA.3724@TK2MSFTNGP10.phx.gbl...
    > This only gives examples of caching based on properties in the ASPX page I
    > would like to know if I can cache based on the value of a Code Behind
    > Property.
    > "Wilco Bauwer" <wilcob@gmail.com> wrote in message
    > news:1109186620.680828.171100@z14g2000cwz.googlegr oups.com...
    >> You can use output caching and use varybycontrol to base the cache on
    >> the value of a property of the usercontrol. Also take a look at the
    >> quickstarts, or any other kind of documentation, because they describe
    >> these kind of things very well:
    >> [url]http://samples.gotdotnet.com/quickstart/aspplus/doc/fragmentcaching.aspx[/url].
    >>
    >
    >

    MattC Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139