Ticket T1279765
Visible to All Users
Duplicate

We have closed this ticket because another page addresses its subject:

How to use dependency injection in modules

Optional Modules in XAF Blazor

created 2 days ago

Dear Support Engineer,

We are working with XAF with Custom Modules in our application in a winforms application.
Which means that we have any functionality in a Module, and a shared codebase.

Functionality like Sales, Purchase are in a shared codebase, custom made functionality or specialized functionality like financial calculation is a Module.

Which works fine.

We are working on porting our XAF application to Blazor as well (We removed the option in the past with WebForms), but it seems we cannot do this like we want.

We use Xaf and XPO together.

We need:

  1. Multitenancy
  2. Modules loading on demand, which differ per tenant, so it can depend on the current login.
  3. Modules that can change XpObjects on the fly.

The third we are now (WinForms) working on in ModuleBase with:

C#
public override void CustomizeTypesInfo(ITypesInfo typesInfo) { base.CustomizeTypesInfo(typesInfo); var customerType= typesInfo.FindTypeInfo(typeof(Customer)); var customField = customerType.CreateMember("CustomFieldInModule", typeof(string)); }

How to get this to work?

Answers approved by DevExpress Support

created 2 days ago

Hello, Michael.

Thank you for contacting us.

We are well aware of your project requirements from How to use dependency injection in modules, Exporting Win Model to Blazor on the fly, Adding data on the fly, and many other tickets.

The situation is still the same today (as per my previous comments):

Custom modules per user/tenant are unsupported in the current XAF Blazor/Web API version (much like custom fields we discussed recently in your other ticket).

Your XAF WinForms app can only work with custom fields and dynamic modules because this client app is run in a separate physical tier/process/machine. XAF Blazor/Web API Service apps have a totally different client-server architecture. These apps share the same web server/machine/process and cannot have different versions of modules/XAF type info system/application model/fields in object types/etc.

I do not expect that we will research how to implement this sort of dynamic scenario until the end of 2025 because we are currently focused on other more popular requests for our multi-tenancy module on our roadmap - I just want to be frank with you and manage expectations in advance.

    Comments (1)
    M M
    Michael de Vlieger 2 days ago

      Hi Dennis,

      It was a different project. As I see you are progressing very quick, I just want to know for sure I have the current status.

      Regards,

      Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

      Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.