Ik heb de volgende tijdelijke oplossing geïmplementeerd totdat mono de metadata-artefacten van het Entity Framework insluit
- Stap1 - Werk de eigenschap metadata-artefactverwerking van uw EntityFramework-model bij van 'Insluiten in uitvoerassemblage' naar "Kopiëren naar uitvoermap"
Dit kopieert de metadata-artefactbestanden naar de bin-map van het project met de .edmx(Project1)
-
Stap2 - Voeg de volgende post-build-gebeurtenissen toe aan het referentieproject (Project2) om de metadata-artefactbestanden naar de prullenbak te kopiëren. U kunt ze toevoegen aan het einde van het .csproj-projectbestand. Vervang Project1 met de naam van uw project.
<PropertyGroup> <PostBuildEvent Condition=" '$(OS)' != 'Unix' ">copy /Y "$(ProjectDir)..\Project1\bin\Debug\Models\*" "$(ProjectDir)\bin\Debug\" </PostBuildEvent> <PostBuildEvent Condition=" '$(OS)' == 'Unix' ">cp -a "$(ProjectDir)../Project1/bin/Debug/Models/." "$(ProjectDir)bin/Debug/" </PostBuildEvent> </PropertyGroup>
-
Stap3 - Werk uw verbindingsreeks bij
van
<add name="EntityframeworkTestEntities" connectionString="metadata=res://*/EntityFrameworkTestModel.csdl|res://*/EntityFrameworkTestModel.ssdl|res://*/EntityFrameworkTestModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.;initial catalog=EntityframeworkTest;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
naar
<add name="EntityframeworkTestEntities" connectionString="metadata=EntityFrameworkTestModel.csdl|EntityFrameworkTestModel.ssdl|EntityFrameworkTestModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.;initial catalog=EntityframeworkTest;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />