Re: Add-ons

Tech-Archive recommends: Fix windows errors by optimizing your registry



You're welcome Mantas,

Good luck.

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
--------------------
| From: "Mantas Miliukas" <doclogix@xxxxxxxxxxxxxxxx>
| References: <e73I$bWBGHA.140@xxxxxxxxxxxxxxxxxxxx>
<2T7tDSdBGHA.1240@xxxxxxxxxxxxxxxxxxxxx>
<eS$7WpiBGHA.344@xxxxxxxxxxxxxxxxxxxx>
<2LaztMsBGHA.1236@xxxxxxxxxxxxxxxxxxxxx>
| Subject: Re: Add-ons
| Date: Thu, 22 Dec 2005 10:11:21 +0200
| Lines: 206
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
| X-RFC2646: Format=Flowed; Original
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
| Message-ID: <eTsGh8sBGHA.4032@xxxxxxxxxxxxxxxxxxxx>
| Newsgroups: microsoft.public.dotnet.framework.aspnet
| NNTP-Posting-Host: 213.226.165.199
| Path: TK2MSFTNGXA02.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTNGP10.phx.gbl
| Xref: TK2MSFTNGXA02.phx.gbl
microsoft.public.dotnet.framework.aspnet:366507
| X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet
|
| Thanks for advices :)
|
| Regards,
| Mantas Miliukas
|
| "Steven Cheng[MSFT]" <stcheng@xxxxxxxxxxxxxxxxxxxx> wrote in message
| news:2LaztMsBGHA.1236@xxxxxxxxxxxxxxxxxxxxxxxx
| > Thanks for your followup Mantas,
| >
| > Using micro core( common interfaces) and mutiple concrete
implementation
| > is
| > a good design style. One thing I'm not sure is how will the 3rd party
| > developers dynamically load those assembly? IMO, they just need to
| > statically reference your core interfaces assembly and develop their own
| > concrete implementation... Also, as long as your interface assembly
(if
| > strong-named) dosn't change version, those concrete implement
assemblies's
| > version changing won't hurt your main application as long as your main
| > application is coded based on interfaces...
| >
| > Regards,
| >
| > Steven Cheng
| > Microsoft Online Support
| >
| > Get Secure! www.microsoft.com/security
| > (This posting is provided "AS IS", with no warranties, and confers no
| > rights.)
| >
| >
| >
| > --------------------
| > | From: "Mantas Miliukas" <doclogix@xxxxxxxxxxxxxxxx>
| > | References: <e73I$bWBGHA.140@xxxxxxxxxxxxxxxxxxxx>
| > <2T7tDSdBGHA.1240@xxxxxxxxxxxxxxxxxxxxx>
| > | Subject: Re: Add-ons
| > | Date: Wed, 21 Dec 2005 14:30:24 +0200
| > | Lines: 136
| > | X-Priority: 3
| > | X-MSMail-Priority: Normal
| > | X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
| > | X-RFC2646: Format=Flowed; Original
| > | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
| > | Message-ID: <eS$7WpiBGHA.344@xxxxxxxxxxxxxxxxxxxx>
| > | Newsgroups: microsoft.public.dotnet.framework.aspnet
| > | NNTP-Posting-Host: 213.226.165.199
| > | Path: TK2MSFTNGXA02.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTNGP11.phx.gbl
| > | Xref: TK2MSFTNGXA02.phx.gbl
| > microsoft.public.dotnet.framework.aspnet:366215
| > | X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet
| > |
| > | Hi,
| > |
| > | Our web solution consists only of strongly-named assemblies.
| > |
| > | I liked your idea with assembly version redirecting,
| > | however it would be too hard to maintain and ensure the integrity of
the
| > | whole system with large number of add-ons.
| > |
| > | We have another solution:
| > |
| > | Lets say we have one assembly which contains only interfaces.
| > | Web solution assemblies only implement those interfaces. We assume
that
| > | interfaces are static, they wont' change as fast as the product core.
| > |
| > | So third party addon developer should load our assemblies dynamically
| > and
| > | cast using the provided interfaces.
| > | The web solution upgrades wont' impact the behavior of the addons
until
| > the
| > | interfaces dll is not changed.
| > |
| > | What do you think about it?
| > | Have you heard any familiar patterns?
| > |
| > | Thanks for your help.
| > |
| > | Best regards,
| > | Mantas Miliukas
| > | mmiliukas(replace with @)doclogix.lt
| > |
| > | "Steven Cheng[MSFT]" <stcheng@xxxxxxxxxxxxxxxxxxxx> wrote in message
| > | news:2T7tDSdBGHA.1240@xxxxxxxxxxxxxxxxxxxxxxxx
| > | > Hi Mantas,
| > | >
| > | > Welcome to ASPNET newsgroup.
| > | > Regarding on the assembly versioning problem in asp.net web based
| > | > application whch will adopt micro-core/add-on architecture, here are
| > some
| > | > of my understanding:
| > | >
| > | > For .net application, the assembly's reference(to other
assemblies...)
| > | > have
| > | > strong-reference or weak reference.... For strong-reference, it
will
| > | > identify the referenced assemblies' Full name( name, culture,
version,
| > | > public key token....), and this is only applied on strong-named
| > | > assembly...
| > | > For private assemblies(non-strongnamed), such version or key token
| > | > checking is not performed....)..
| > | > So this this concern with your scenario, is your main application's
| > | > assemblies(which will change version...) strong-named? If not, then
we
| > | > won't need to worry about versioning problem.....
| > | >
| > | > If your application's shared/core assemblies are strong-named,
then,
| > we
| > | > need to consider versioning problem. Based on my experience, we
can
| > use
| > | > the .net's assembly version binding/redirection to redirect
different
| > | > version of certain assemblies (by specify assembly's identitfy....).
| > Here
| > | > is the MSDN reference demonstrate redirecting assembly version:
| > | >
| > | > #Redirecting Assembly Versions
| > | >
| >
http://msdn.microsoft.com/library/en-us/cpguide/html/cpconAssemblyVersionRed
| > | > irection.asp?frame=true
| > | >
| > | > Also, the below aritcle can help you better understandg how .net
| > runtime
| > | > locate assemblies:
| > | >
| > | > #How the Runtime Locates Assemblies
| > | >
| >
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/htm
| > | > l/cpconhowruntimelocatesassemblies.asp
| > | >
| > | > In addition, one thing need to take care is that for ASP.NET web
| > | > application, we should always put those strong-named assemblies
used
| > in
| > | > GAC, this is because ASP.NET application dosn't support strong-named
| > | > assemblies in private bin path.....
| > | >
| > | > Hope helps. Thanks,
| > | >
| > | > Steven Cheng
| > | > Microsoft Online Support
| > | >
| > | > Get Secure! www.microsoft.com/security
| > | > (This posting is provided "AS IS", with no warranties, and confers
no
| > | > rights.)
| > | >
| > | >
| > | >
| > | >
| > | > --------------------
| > | > | From: "Mantas Miliukas" <doclogix@xxxxxxxxxxxxxxxx>
| > | > | Subject: Add-ons
| > | > | Date: Tue, 20 Dec 2005 15:12:23 +0200
| > | > | Lines: 27
| > | > | X-Priority: 3
| > | > | X-MSMail-Priority: Normal
| > | > | X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
| > | > | X-RFC2646: Format=Flowed; Original
| > | > | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
| > | > | Message-ID: <e73I$bWBGHA.140@xxxxxxxxxxxxxxxxxxxx>
| > | > | Newsgroups: microsoft.public.dotnet.framework.aspnet
| > | > | NNTP-Posting-Host: 213.226.165.199
| > | > | Path:
| > TK2MSFTNGXA02.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTNGP12.phx.gbl
| > | > | Xref: TK2MSFTNGXA02.phx.gbl
| > | > microsoft.public.dotnet.framework.aspnet:365930
| > | > | X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet
| > | > |
| > | > | Hi,
| > | > |
| > | > | We have developed a web solution using ASP.NET.
| > | > |
| > | > | Now, there is a need of add-ons for our web solution.
| > | > | We want to allow third party companies write their own code and
put
| > it
| > | > to
| > | > | our web solution.
| > | > |
| > | > | But there is one problem :)
| > | > |
| > | > | Let's say our website contains dlls of 1.0 version.
| > | > | The third party company writes their own dll that references our
dll
| > of
| > | > 1.0
| > | > | version.
| > | > | Everything works fine until the website contains dlls of 1.0
| > version.
| > | > | In case if we upgrade the web solution from 1.0 to 2.0 version,
the
| > | > third
| > | > | part add-ons won't work.
| > | > | The whole website will go down, because third party addon seeks
for
| > dll
| > | > of
| > | > | version 1.0 and doesn't find it.
| > | > |
| > | > | Do you have any suggestions how this framework should be
| > implemented?
| > | > | Perpahps you can specify some good article?
| > | > |
| > | > | Best regards,
| > | > | Mantas Miliukas
| > | > | mmiliukas(replace with @)doclogix.lt
| > | > |
| > | > |
| > | > |
| > | >
| > |
| > |
| > |
| >
|
|
|

.



Relevant Pages

  • Re: Add-ons
    ... Using micro core(common interfaces) and mutiple concrete implementation is ... One thing I'm not sure is how will the 3rd party ... | Our web solution consists only of strongly-named assemblies. ... For strong-reference, it will ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Add-ons
    ... Mantas Miliukas ... > statically reference your core interfaces assembly and develop their own ... > | Our web solution consists only of strongly-named assemblies. ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Best Practice: Interface definitions - where?
    ... > MS seems to like the first approach with 2 assemblies over the latter ... I guess that it is somewhat usage dependant but IMO having interfaces ... your client apps and server apps can share the same interface assembly, ... Oracle provider, the interface assembly that I have to include contains ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: A tool to automatically generate metadata-only assemblies?
    ... changes to the code to use interfaces. ... added all the static members that the soapsuds tool didn't export. ... The client assemblies containing only the definitions of the classes ...
    (microsoft.public.dotnet.distributed_apps)