Hoi allemaal,
De omgeving is SharePoint 2007 SP1.
We hebben 2 webapplicaties (A en
welke beide het Entity FrameWork 1.0 van .NET 3.5 gebruiken.
Webapp A heeft een document-library met een eventhandler. Deze eventhandler heeft wat functionaliteit om gegevens uit de database te halen, om vervolgens wat handelingen te doen (taken zetten).
Het probleem:
De functionaliteit om de taken te verzetten, wordt afgetrapt vanuit webapp B, een webpart in sharepoint, welke ervoor zorgt dat de eventhandler van webapp A wordt afgetrapt. Vervolgens vindt Webapp B dat hij alle DLL's van Webapp A moet gaan inladen. Dit zorgt uiteindelijk voor Entity Framework errors, omdat de Entity Modellen van beide Webapplicaties licht afwijken, dit is meteen het grootste probleem.
We hebben al een hoop research zitten in het laden van verschillende entity modellen in hetzelfde proces, echter is dit onmogelijk als beide entity modellen dezelfde naam hebben (nodig i.v.m. merging, het is onderdeel van het fundament). Beide webapplicaties hebben een eigen versie van het fundament. Als beide entity modellen exact gelijk zijn, krijgen we ook errors.
We hebben gevalideerd dat de code van beide webapps nergens verwijst naar een dll van de andere webapp.
Huidige workaround:
We dwingen webapp B om altijd de Entity DLL van webapp B te gebruiken, ook voor dll's van webapp A. Hierdoor is er maar 1 dll die alles van entity framework afhandelt, en zijn er geen 2 contexten in hetzelfde proces.
De vragen zijn:
Waarom laadt webapp B de dll's van webapp A. De eventhandler zou toch afgehandeld moeten worden door zijn eigen webapp A.
Is er een andere optie dan het gebruiken van de assembly-redirect?
#edit: Versie EF aangepast naar aanleiding van commentaar hier beneden
De omgeving is SharePoint 2007 SP1.
We hebben 2 webapplicaties (A en
Webapp A heeft een document-library met een eventhandler. Deze eventhandler heeft wat functionaliteit om gegevens uit de database te halen, om vervolgens wat handelingen te doen (taken zetten).
Het probleem:
De functionaliteit om de taken te verzetten, wordt afgetrapt vanuit webapp B, een webpart in sharepoint, welke ervoor zorgt dat de eventhandler van webapp A wordt afgetrapt. Vervolgens vindt Webapp B dat hij alle DLL's van Webapp A moet gaan inladen. Dit zorgt uiteindelijk voor Entity Framework errors, omdat de Entity Modellen van beide Webapplicaties licht afwijken, dit is meteen het grootste probleem.
We hebben al een hoop research zitten in het laden van verschillende entity modellen in hetzelfde proces, echter is dit onmogelijk als beide entity modellen dezelfde naam hebben (nodig i.v.m. merging, het is onderdeel van het fundament). Beide webapplicaties hebben een eigen versie van het fundament. Als beide entity modellen exact gelijk zijn, krijgen we ook errors.
We hebben gevalideerd dat de code van beide webapps nergens verwijst naar een dll van de andere webapp.
Huidige workaround:
We dwingen webapp B om altijd de Entity DLL van webapp B te gebruiken, ook voor dll's van webapp A. Hierdoor is er maar 1 dll die alles van entity framework afhandelt, en zijn er geen 2 contexten in hetzelfde proces.
De vragen zijn:
Waarom laadt webapp B de dll's van webapp A. De eventhandler zou toch afgehandeld moeten worden door zijn eigen webapp A.
Is er een andere optie dan het gebruiken van de assembly-redirect?
#edit: Versie EF aangepast naar aanleiding van commentaar hier beneden
[ Voor 5% gewijzigd door Hoogie2004 op 29-07-2010 10:52 ]