locked
Help with DesignTimeResourceProviderFactory RRS feed

  • Question

  • User1183903743 posted

    I am trying to do a DesignTimeResourceProviderFactory. I am not sure what "design-time" really means.

    1. A way for the IDE to retieve resources from the data store(resx out of the box) so they can be used for the code generation?
    2. Complete substituion of the resx mechanism (which is only design time anyway) so that instead of from resx the .resources files are compiled into satellite assemblies from data in an an alternative store (RDBMS etc.). But at the end the assemblies ARE the same and runtime behavior is too.

    If the latter, it would be terrific. I don't think so, and I don't see any .reources files in the "Temporary Asp.Net Files" when using another provider. There is no MSDN documentation to go by.

    I am following this AccessDesignTimeResourceProvider example by Eilon Lipton. This example was cited in the discussion on localization architectures. If I could get it to work, it would solve half the issues discussed there. The example shows a design and runtime provider with an Access store as an alternative to the resx xml store. I am only interested in the design-time one. 

    There are a few minor issues with the sample code download, like an empty db file and sample default page but they are easily fixable with minimal tinker. I do get the runtime provider to work, and that only for global. Also, the sample db is simplified in just one table and not normalized, but if I can get it to work I could make it more robust.

    Eilon's example shows a standard resx based site and Access OLEDB based site. Neither has resources other than the invariant culture (MyGlobalStrings.resx), so no satellite assembies can be expected to be found, as is, with only invariant data. 

    However, if you add another culture like "en" (MyGlobalStrings.en.resx) to the standard resx based site you can find both the .resources files (resources.myglobalstrings.resources, resources.myglobalstrings.en.resources) and the additional /en sat assembly.

    I should be able to do the same to Access based site by adding some rows for "en" or "fr" in the db table. It doesn't happen.

    How can I achieve intact RUNTIME compiled site with the substituted design time provider being completely transparent to the final product?

    Please help!

    Thanks
     

    Monday, November 28, 2005 11:24 PM

All replies

  • User385992506 posted

    Hi,

    Writing about this topic after 2 years :). I have the same design time pblm. That is when I M using meta:ResourceKey or Resources.Name.Key I am getting error. However if I use GetLocalResourceObject() or GetGlobalResourceObject() it works fine.

    Have U solved this pblm?

    I have used the following article:

    http://msdn.microsoft.com/en-us/library/aa905797.aspx

    Warm Regards,

    Sultan

    Thursday, November 1, 2007 6:26 AM
  • User1642585364 posted

    I haven't had time to try putting one together, but [url=http://www.leftslipper.com/ShowFaq.aspx?FaqId=9]this page[/url] has a sample one for use with an MS Access storage. You could try to port it to whatever backend you're using to store your resources.

    Friday, November 2, 2007 12:02 PM