[mapguide-internals] RE: Refactoring Web .NET API into Common DLLs

Leaf Li leaf.li at autodesk.com
Thu Jun 25 21:46:01 EDT 2009


I think your major concerns is whether this change will break the existing MapGuide application after users update to new version of MapGuide.

It can be resolved by one of the following solutions.

1.       We still use SWIG to create MapGuideNotNetAPi.dll. It exists with refactoed dlls. Then no existing MG application will be broken.

2.       Use .NET assembly with multiple file to resolve it.

a)         Create the following netmodule files

                         i.              OSGeo.MapGuide.Foundation.netmodule

                       ii.              OSGeo.MapGuide.Geometry.netmodule

                      iii.              OSGeo.MapGuide.PlatformBase.netmodule

                      iv.              OSGeo.MapGuide.MapGuideCommon.netmodule

                       v.              OSGeo.MapGuide.Web.netmodule

b)         Use al.exe to create an assembly for each .netmodule in step (a). Then the following files will be created.

                         i.              OSGeo.MapGuide.Foundation.dll

                       ii.              OSGeo.MapGuide.Geometry.dll

                      iii.              OSGeo.MapGuide.PlatformBase.dll

                      iv.              OSGeo.MapGuide.MapGuideCommon.dll

                       v.              OSGeo.MapGuide.Web.dll

c)         Use al.exe to create an assembly for all .netmodule in step (a). The following file will be created.

                         i.              MapGuideDotNetApi.dll

By the solution, all assembly contains only a list of .netmodule. They are very small. Metadata and IL code are located in .netmodule.

So it isn't a problem.


Leaf Li

More information about the mapguide-internals mailing list