iSeller Commerce
iSeller POS Retail
iSeller POS F&B
iSeller POS Express
Crosslight
WebUI
ClientUI
What's New
Download Trial
Web Solution
Mobile Solution
Enterprise Solution
Custom Development
Blog
Community
Latest Development Blogs
ForumPostTopic
Browse By Tag
Hi Handy Surya,
Thanks a lot for the answer which is spot on and the code snippet .
I guess I do not need to write the piece of code(shown below) in the shell Downloaded event handler but rather do it when the xap is downloaded.
IdeaBlade.Core.Composition.CompositionHost.Add(ApplicationPackage.Source);
Could you also enlighten me why MEF is not used in ClientUI ?
Regards
Balachander
Hi Jimmy,
Thank you for the excellent reply. It provided a clue to what I had missed.
The power of the external xap navigation with virtualuri is fantastic....
Thanks for the really wonderful navigation framework design which is also surprisingly simple to implement !!!!
I had missed having a UxFrame in the external xap project which handles the (child) navigation to transfer control to the desired page. (UxFrame inside the sample page in the sample framework project)
I really love your precise (on the dot) replies to my questions.
Hi Jimmy,Yes, the external xap calling and integration code as implemented in the sample project is something I would like to understand.Specifically I am able to navigate to a page defined as the main type in an external xap using the VirtualPathIdentity. I am not able to navigate to another page in the external xap using the VirtualPathIdentity/pagename. In the sample solution you have a file Applications.packages which holds the list of Apps (projects) which are added to the Shell in the App.xaml.cs of the Intersoft.ClientUI.Samples project.When the navigation is made to any other project the appropriate project is downloaded and control is transferred by the ClientUI Navigation to the appropriate page. In all the projects (refer file Application.packages) reference is made to the (EntryPointAssembly="Intersoft.ClientUI.Samples.Framework" and MainType="Intersoft.ClientUI.Samples.Framework.MainPage") The sample app uses the VirtualPathIdentity to navigate to a specific page on the external xap for example /BarMenuControls/UxToolbar even though the MainType is MainPage. Can you explain how this is done ?RegardsBalachander Hi Balachander,Unfortunately, the sample framework project is not currently shipped along in the installer. It contains a number of application-specific logic that we don't feel necessary to be included as source. However, we will consider to include the project source in the next release.Are there any specific code/features that you are looking for?Best,Jimmy
Yes, the external xap calling and integration code as implemented in the sample project is something I would like to understand.
Specifically I am able to navigate to a page defined as the main type in an external xap using the VirtualPathIdentity.
I am not able to navigate to another page in the external xap using the VirtualPathIdentity/pagename.
In the sample solution you have a file Applications.packages which holds the list of Apps (projects) which are added to the Shell in the App.xaml.cs of the Intersoft.ClientUI.Samples project.
When the navigation is made to any other project the appropriate project is downloaded and control is transferred by the ClientUI Navigation to the appropriate page.
In all the projects (refer file Application.packages) reference is made to the (EntryPointAssembly="Intersoft.ClientUI.Samples.Framework" and MainType="Intersoft.ClientUI.Samples.Framework.MainPage")
The sample app uses the VirtualPathIdentity to navigate to a specific page on the external xap for example /BarMenuControls/UxToolbar even though the MainType is MainPage.
Can you explain how this is done ?
Hi Balachander,Unfortunately, the sample framework project is not currently shipped along in the installer. It contains a number of application-specific logic that we don't feel necessary to be included as source. However, we will consider to include the project source in the next release.Are there any specific code/features that you are looking for?Best,Jimmy
Hi Riendy,
Yes I have installed the WebUI Studio (2011 R1)
The Intersoft ClientUI MVVM Data Application template with DevForce does not provide support for Authentication like the Business Template for WCF Ria
Hi Jimmy,Thank you very much for the succinct reply.It has helped clarify all my questions and also explained the behaviour I had with WCF Ria.Thank a lot.RegardsBalachander Hi Balachander,Thanks for pointing out about the WCF RIA article.WCF RIA includes a very limited support for client-side caching, which we don't consider it as a full-featured client-side caching. Its implementation is very simple where the retrieved entities will be cached only in query-level session. This means that if you loaded the first page and have some changes, then go to the next page, the previous changes will be gone because they aren't persisted.That kind of caching, for me, is not called client-side caching. It's just saving the retrieved entities temporarily for a single session operation which is not useful in advanced scenarios (because it invalidates the use of editing and changes tracking).Contrary, DevForce implements client-side caching which means the changes you made on previous entities will not lose when you perform another server operation. This enables the batch update feature to be implemented, because it allows you to make changes on first page, jump to next page, do some more changes, and finally click the save button to submit all changes that you've made across the pages.WCF RIA is good and maybe sufficient for basic and simple scenarios such as per-row editing. Our data controls fully support WCF RIA as well, so the choice between WCF RIA and DevForce lies in your scenarios and business requirements. If you're implementing mission-critical apps, I would suggest DevForce because you get first-class products and support. I recalled my poor experience submitting feedback and bug fixes to WCF RIA team and never get responded in years -- I think we cannot expect too much on a free software, can we?Hth,Jimmy
Thank you very much for the succinct reply.
It has helped clarify all my questions and also explained the behaviour I had with WCF Ria.
Thank a lot.
Hi Balachander,Thanks for pointing out about the WCF RIA article.WCF RIA includes a very limited support for client-side caching, which we don't consider it as a full-featured client-side caching. Its implementation is very simple where the retrieved entities will be cached only in query-level session. This means that if you loaded the first page and have some changes, then go to the next page, the previous changes will be gone because they aren't persisted.That kind of caching, for me, is not called client-side caching. It's just saving the retrieved entities temporarily for a single session operation which is not useful in advanced scenarios (because it invalidates the use of editing and changes tracking).Contrary, DevForce implements client-side caching which means the changes you made on previous entities will not lose when you perform another server operation. This enables the batch update feature to be implemented, because it allows you to make changes on first page, jump to next page, do some more changes, and finally click the save button to submit all changes that you've made across the pages.WCF RIA is good and maybe sufficient for basic and simple scenarios such as per-row editing. Our data controls fully support WCF RIA as well, so the choice between WCF RIA and DevForce lies in your scenarios and business requirements. If you're implementing mission-critical apps, I would suggest DevForce because you get first-class products and support. I recalled my poor experience submitting feedback and bug fixes to WCF RIA team and never get responded in years -- I think we cannot expect too much on a free software, can we?Hth,Jimmy
Hi Jimmy,Thank you so much for educating me on the differences between Output Caching and Client Side Caching on Devforce. I also understand that on Devforce you have parameters which would optionally force requerying of the data from the server. (QueryStrategy)However, please refer to the link on WCF RIA I had referrred earlier (shown below)http://www.softinsight.com/downloads/DevConnections/Noyes_SLC_LDA302_DeepDiveIntoRIAServices.pdfOn page 6 in the slide titled Update Operations he has mentioned that the Domain Context contains an Entity Container. Entities retrieved through a query are cached client side.Would be very thankful if you help clarify my doubts that Client Side Caching is NOT SUPPORTED in WCF RIA.Thanks once again for the response. RegardsBalachanderDear Balachander,Output caching is entirely different with client-side caching. Output caching is a feature in ASP.NET that allows a specific page to return the cached data based on the cache parameters.The client-side caching in DevForce allows complete persistence in the client-side level (this means at Silverlight client). This also means that data that is already retrieved will not be fecthed anymore from server.For batch update to work, the data service provider is required to have client-side caching capability. Unfortunately, WCF RIA Services doesn't support it.Let me know if you have any questions.Hth,Jimmy
Thank you so much for educating me on the differences between Output Caching and Client Side Caching on Devforce.
I also understand that on Devforce you have parameters which would optionally force requerying of the data from the server. (QueryStrategy)
However, please refer to the link on WCF RIA I had referrred earlier (shown below)
http://www.softinsight.com/downloads/DevConnections/Noyes_SLC_LDA302_DeepDiveIntoRIAServices.pdf
On page 6 in the slide titled Update Operations he has mentioned that the Domain Context contains an Entity Container. Entities retrieved through a query are cached client side.
Would be very thankful if you help clarify my doubts that Client Side Caching is NOT SUPPORTED in WCF RIA.
Thanks once again for the response.
Dear Balachander,Output caching is entirely different with client-side caching. Output caching is a feature in ASP.NET that allows a specific page to return the cached data based on the cache parameters.The client-side caching in DevForce allows complete persistence in the client-side level (this means at Silverlight client). This also means that data that is already retrieved will not be fecthed anymore from server.For batch update to work, the data service provider is required to have client-side caching capability. Unfortunately, WCF RIA Services doesn't support it.Let me know if you have any questions.Hth,Jimmy
Hi Martin,Thanks for the update.My understanding on WCF RIA is that entities retrieved through a query ARE CACHED on the client side. http://blogs.msdn.com/b/digital_ruminations/archive/2011/01/05/ria-services-output-caching.aspxhttp://www.softinsight.com/downloads/DevConnections/Noyes_SLC_LDA302_DeepDiveIntoRIAServices.pdfSo why this restriction ?How is the use of QueryDescriptor comparable to the DCV introduced in RIA Sp1 ?Balachander Hello Balachander,Bacth Update is not available while using WCF RIA because WCF RIA doesn't support what we called Client-side caching. Therefore, it will retrieve all data from the server-side and overide all changes in the UXGrid.Client-side caching is needed when we perform Batch Update. Since it is not supported in WCF RIA SP1, then we couldn't use the behavior of Batch Update process. However, DevForce does support client-side caching and that is why we can implement Batch Update when using DevForce.Hope this helps. Thank you. Regards,-Martin-
Hi Martin,
Thanks for the update.
My understanding on WCF RIA is that entities retrieved through a query ARE CACHED on the client side.
http://blogs.msdn.com/b/digital_ruminations/archive/2011/01/05/ria-services-output-caching.aspx
So why this restriction ?
How is the use of QueryDescriptor comparable to the DCV introduced in RIA Sp1 ?
Hello Balachander,
Bacth Update is not available while using WCF RIA because WCF RIA doesn't support what we called Client-side caching. Therefore, it will retrieve all data from the server-side and overide all changes in the UXGrid.
Client-side caching is needed when we perform Batch Update. Since it is not supported in WCF RIA SP1, then we couldn't use the behavior of Batch Update process. However, DevForce does support client-side caching and that is why we can implement Batch Update when using DevForce.
Hope this helps. Thank you.
Regards,-Martin-
Have done exactly what I had stated. Am attaching the zip file.
Please note that you will have to replace the file in the default template folder where Visual Studio picks up.
In my case it us C:\Users\mlc\Documents\Visual Studio 2010\Templates\ProjectTemplates\Visual C#\Intersoft Solutions\Silverlight.
My username is "mlc" hence replace it as applicable.
It does work for me....
Discovered the problem...... the folder name BusinessApplication.Web in the zipped template file has now changed to BA.Web
Thanks
or
Choose this if you're already a member of Intersoft Community Forum. You can link your OpenID account to your existing Intersoft Social ID.
Choose this if you don't have an Intersoft account yet. Your authenticated OpenID will be automatically linked to your new Intersoft account.
Enter your Wordpress Blogname