Commit 8d967368 authored by Marc Gravell's avatar Marc Gravell

Update 3rd party libs; package for 1.39

parent 9ab09f9b
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="NuGet.CommandLine" version="2.8.2" /> <package id="NuGet.CommandLine" version="2.8.3" />
</packages> </packages>
\ No newline at end of file
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
</Reference> </Reference>
<Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> <Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private> <Private>True</Private>
<HintPath>..\packages\Microsoft.SqlServer.Types.11.0.1\lib\net20\Microsoft.SqlServer.Types.dll</HintPath> <HintPath>..\packages\Microsoft.SqlServer.Types.11.0.2\lib\net20\Microsoft.SqlServer.Types.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" /> <Reference Include="System.ComponentModel.DataAnnotations" />
...@@ -76,25 +76,6 @@ ...@@ -76,25 +76,6 @@
</Compile> </Compile>
<Compile Include="SqlServerTypes\Loader.cs" /> <Compile Include="SqlServerTypes\Loader.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\readme.htm" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="App.config" /> <None Include="App.config" />
<None Include="packages.config" /> <None Include="packages.config" />
...@@ -108,6 +89,25 @@ ...@@ -108,6 +89,25 @@
<Name>Dapper NET40 SNK</Name> <Name>Dapper NET40 SNK</Name>
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\readme.htm" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="EntityFramework" version="6.1.2-beta1" targetFramework="net40" /> <package id="EntityFramework" version="6.1.2-beta1" targetFramework="net40" />
<package id="Microsoft.SqlServer.Types" version="11.0.1" targetFramework="net40" /> <package id="Microsoft.SqlServer.Types" version="11.0.2" targetFramework="net40" />
</packages> </packages>
\ No newline at end of file
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
</Reference> </Reference>
<Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> <Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private> <Private>True</Private>
<HintPath>..\packages\Microsoft.SqlServer.Types.11.0.1\lib\net20\Microsoft.SqlServer.Types.dll</HintPath> <HintPath>..\packages\Microsoft.SqlServer.Types.11.0.2\lib\net20\Microsoft.SqlServer.Types.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" /> <Reference Include="System.ComponentModel.DataAnnotations" />
...@@ -70,25 +70,6 @@ ...@@ -70,25 +70,6 @@
</Compile> </Compile>
<Compile Include="SqlServerTypes\Loader.cs" /> <Compile Include="SqlServerTypes\Loader.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\readme.htm" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="App.config" /> <None Include="App.config" />
<None Include="packages.config" /> <None Include="packages.config" />
...@@ -102,6 +83,25 @@ ...@@ -102,6 +83,25 @@
<ItemGroup> <ItemGroup>
<Folder Include="Properties\" /> <Folder Include="Properties\" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\readme.htm" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="EntityFramework" version="6.1.2-beta1" targetFramework="net40" /> <package id="EntityFramework" version="6.1.2-beta1" targetFramework="net40" />
<package id="Microsoft.SqlServer.Types" version="11.0.1" targetFramework="net40" /> <package id="Microsoft.SqlServer.Types" version="11.0.2" targetFramework="net40" />
</packages> </packages>
\ No newline at end of file
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
</Reference> </Reference>
<Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> <Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private> <Private>True</Private>
<HintPath>..\packages\Microsoft.SqlServer.Types.11.0.1\lib\net20\Microsoft.SqlServer.Types.dll</HintPath> <HintPath>..\packages\Microsoft.SqlServer.Types.11.0.2\lib\net20\Microsoft.SqlServer.Types.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" /> <Reference Include="System.ComponentModel.DataAnnotations" />
...@@ -79,33 +79,33 @@ ...@@ -79,33 +79,33 @@
<None Include="packages.config" /> <None Include="packages.config" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\msvcr100.dll"> <ProjectReference Include="..\Dapper NET45 SNK\Dapper NET45 SNK.csproj">
<Project>{7140725c-8898-4f58-b566-628a80db4efa}</Project>
<Name>Dapper NET45 SNK</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
</ItemGroup>
<ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link> <Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\SqlServerSpatial110.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link> <Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\msvcr100.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link> <Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\SqlServerSpatial110.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link> <Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="SqlServerTypes\readme.htm" /> <Content Include="SqlServerTypes\readme.htm" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Dapper NET45 SNK\Dapper NET45 SNK.csproj">
<Project>{7140725c-8898-4f58-b566-628a80db4efa}</Project>
<Name>Dapper NET45 SNK</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="EntityFramework" version="6.1.2-beta1" targetFramework="net45" /> <package id="EntityFramework" version="6.1.2-beta1" targetFramework="net45" />
<package id="Microsoft.SqlServer.Types" version="11.0.1" targetFramework="net45" /> <package id="Microsoft.SqlServer.Types" version="11.0.2" targetFramework="net45" />
</packages> </packages>
\ No newline at end of file
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
</Reference> </Reference>
<Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> <Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private> <Private>True</Private>
<HintPath>..\packages\Microsoft.SqlServer.Types.11.0.1\lib\net20\Microsoft.SqlServer.Types.dll</HintPath> <HintPath>..\packages\Microsoft.SqlServer.Types.11.0.2\lib\net20\Microsoft.SqlServer.Types.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" /> <Reference Include="System.ComponentModel.DataAnnotations" />
...@@ -65,30 +65,30 @@ ...@@ -65,30 +65,30 @@
<None Include="packages.config" /> <None Include="packages.config" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\msvcr100.dll"> <ProjectReference Include="..\Dapper NET45\Dapper NET45.csproj">
<Project>{0fff5bc7-0a4b-4d87-835e-4fad70937507}</Project>
<Name>Dapper NET45</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link> <Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\SqlServerSpatial110.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link> <Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\msvcr100.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link> <Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\SqlServerSpatial110.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link> <Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="SqlServerTypes\readme.htm" /> <Content Include="SqlServerTypes\readme.htm" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Dapper NET45\Dapper NET45.csproj">
<Project>{0fff5bc7-0a4b-4d87-835e-4fad70937507}</Project>
<Name>Dapper NET45</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="EntityFramework" version="6.1.2-beta1" targetFramework="net45" /> <package id="EntityFramework" version="6.1.2-beta1" targetFramework="net45" />
<package id="Microsoft.SqlServer.Types" version="11.0.1" targetFramework="net45" /> <package id="Microsoft.SqlServer.Types" version="11.0.2" targetFramework="net45" />
</packages> </packages>
\ No newline at end of file
...@@ -273,7 +273,4 @@ Global ...@@ -273,7 +273,4 @@ Global
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
EndGlobalSection EndGlobalSection
GlobalSection(Performance) = preSolution
HasPerformanceSessions = true
EndGlobalSection
EndGlobal EndGlobal
...@@ -43,14 +43,15 @@ ...@@ -43,14 +43,15 @@
</Reference> </Reference>
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\EntityFramework.6.1.2-beta1\lib\net45\EntityFramework.dll</HintPath> <HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
</Reference> </Reference>
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> <Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\EntityFramework.6.1.2-beta1\lib\net45\EntityFramework.SqlServer.dll</HintPath> <HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll</HintPath>
</Reference> </Reference>
<Reference Include="FirebirdSql.Data.FirebirdClient"> <Reference Include="FirebirdSql.Data.FirebirdClient, Version=4.6.1.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c, processorArchitecture=MSIL">
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.4.5.1.0\lib\net45\FirebirdSql.Data.FirebirdClient.dll</HintPath> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.4.6.1.0\lib\net45\FirebirdSql.Data.FirebirdClient.dll</HintPath>
</Reference> </Reference>
<Reference Include="FSharp.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> <Reference Include="FSharp.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
...@@ -80,11 +81,11 @@ ...@@ -80,11 +81,11 @@
</Reference> </Reference>
<Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> <Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private> <Private>True</Private>
<HintPath>..\packages\Microsoft.SqlServer.Types.11.0.1\lib\net20\Microsoft.SqlServer.Types.dll</HintPath> <HintPath>..\packages\Microsoft.SqlServer.Types.11.0.2\lib\net20\Microsoft.SqlServer.Types.dll</HintPath>
</Reference> </Reference>
<Reference Include="Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL"> <Reference Include="Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\Npgsql.2.2.1\lib\net45\Mono.Security.dll</HintPath> <HintPath>..\packages\Npgsql.2.2.5\lib\net45\Mono.Security.dll</HintPath>
</Reference> </Reference>
<Reference Include="NHibernate"> <Reference Include="NHibernate">
<HintPath>NHibernate\NHibernate.dll</HintPath> <HintPath>NHibernate\NHibernate.dll</HintPath>
...@@ -92,9 +93,9 @@ ...@@ -92,9 +93,9 @@
<Reference Include="NHibernate.ByteCode.LinFu"> <Reference Include="NHibernate.ByteCode.LinFu">
<HintPath>NHibernate\NHibernate.ByteCode.LinFu.dll</HintPath> <HintPath>NHibernate\NHibernate.ByteCode.LinFu.dll</HintPath>
</Reference> </Reference>
<Reference Include="Npgsql, Version=2.2.1.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL"> <Reference Include="Npgsql, Version=2.2.5.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\Npgsql.2.2.1\lib\net45\Npgsql.dll</HintPath> <HintPath>..\packages\Npgsql.2.2.5\lib\net45\Npgsql.dll</HintPath>
</Reference> </Reference>
<Reference Include="ServiceStack.Common, Version=1.0.4110.36238, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="ServiceStack.Common, Version=1.0.4110.36238, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
...@@ -140,9 +141,9 @@ ...@@ -140,9 +141,9 @@
<Reference Include="SubSonic.Core"> <Reference Include="SubSonic.Core">
<HintPath>SubSonic\SubSonic.Core.dll</HintPath> <HintPath>SubSonic\SubSonic.Core.dll</HintPath>
</Reference> </Reference>
<Reference Include="Susanoo.Core, Version=0.5.3.0, Culture=neutral, PublicKeyToken=0a505ce04f8a59d5, processorArchitecture=MSIL"> <Reference Include="Susanoo.Core, Version=0.8.4.0, Culture=neutral, PublicKeyToken=0a505ce04f8a59d5, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\Susanoo.Core.0.5.3.0\lib\net45\Susanoo.Core.dll</HintPath> <HintPath>..\packages\Susanoo.Core.0.8.4.36\lib\net45\Susanoo.Core.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" /> <Reference Include="System.ComponentModel.DataAnnotations" />
...@@ -245,21 +246,21 @@ ...@@ -245,21 +246,21 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\msvcr100.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link> <Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x64\SqlServerSpatial110.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link> <Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\msvcr100.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link> <Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="..\packages\Microsoft.SqlServer.Types.11.0.1\nativeBinaries\x86\SqlServerSpatial110.dll"> <Content Include="..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link> <Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="NHibernate\hibernate.cfg.xml" /> <Content Include="NHibernate\hibernate.cfg.xml" />
<Content Include="NHibernate\Post.hbm.xml" /> <Content Include="NHibernate\Post.hbm.xml" />
......
...@@ -223,8 +223,9 @@ public void Run(int iterations) ...@@ -223,8 +223,9 @@ public void Run(int iterations)
.Execute(susanooDb, new { Id }).First(), "Susanoo Mapping Static"); .Execute(susanooDb, new { Id }).First(), "Susanoo Mapping Static");
// Soma // Soma
var somadb = new Soma.Core.Db(new SomaConfig()); // DISABLED: assembly fail loading FSharp.PowerPack, Version=2.0.0.0
tests.Add(id => somadb.Find<Post>(id), "Soma"); // var somadb = new Soma.Core.Db(new SomaConfig());
// tests.Add(id => somadb.Find<Post>(id), "Soma");
//ServiceStack's OrmLite: //ServiceStack's OrmLite:
OrmLiteConfig.DialectProvider = SqlServerOrmLiteDialectProvider.Instance; //Using SQL Server OrmLiteConfig.DialectProvider = SqlServerOrmLiteDialectProvider.Instance; //Using SQL Server
......
...@@ -28,6 +28,15 @@ ...@@ -28,6 +28,15 @@
<assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" /> <assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0" /> <bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly> </dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
</assemblyBinding> </assemblyBinding>
</runtime> </runtime>
</configuration> <system.data>
\ No newline at end of file <DbProviderFactories>
<remove invariant="FirebirdSql.Data.FirebirdClient" />
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient" />
</DbProviderFactories>
</system.data></configuration>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="EntityFramework" version="6.1.2-beta1" targetFramework="net45" /> <package id="EntityFramework" version="6.1.3" targetFramework="net45" />
<package id="FirebirdSql.Data.FirebirdClient" version="4.5.1.0" targetFramework="net45" /> <package id="FirebirdSql.Data.FirebirdClient" version="4.6.1.0" targetFramework="net45" />
<package id="FSharp.Core" version="4.0.0" targetFramework="net45" /> <package id="FSharp.Core" version="4.0.0" targetFramework="net45" />
<package id="FSPowerPack.Community" version="3.0.0.0" targetFramework="net45" /> <package id="FSPowerPack.Community" version="3.0.0.0" targetFramework="net45" />
<package id="FSPowerPack.Core.Community" version="3.0.0.0" targetFramework="net45" /> <package id="FSPowerPack.Core.Community" version="3.0.0.0" targetFramework="net45" />
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
<package id="FSPowerPack.Metadata.Community" version="3.0.0.0" targetFramework="net45" /> <package id="FSPowerPack.Metadata.Community" version="3.0.0.0" targetFramework="net45" />
<package id="FSPowerPack.Parallel.Seq.Community" version="3.0.0.0" targetFramework="net45" /> <package id="FSPowerPack.Parallel.Seq.Community" version="3.0.0.0" targetFramework="net45" />
<package id="Microsoft.SqlServer.Compact" version="4.0.8876.1" targetFramework="net45" /> <package id="Microsoft.SqlServer.Compact" version="4.0.8876.1" targetFramework="net45" />
<package id="Microsoft.SqlServer.Types" version="11.0.1" targetFramework="net45" /> <package id="Microsoft.SqlServer.Types" version="11.0.2" targetFramework="net45" />
<package id="Npgsql" version="2.2.1" targetFramework="net45" /> <package id="Npgsql" version="2.2.5" targetFramework="net45" />
<package id="SqlServerCompact" version="4.0.8854.1" targetFramework="net45" /> <package id="SqlServerCompact" version="4.0.8854.1" targetFramework="net45" />
<package id="Susanoo.Core" version="0.5.3.0" targetFramework="net45" /> <package id="Susanoo.Core" version="0.8.4.36" targetFramework="net45" />
</packages> </packages>
\ No newline at end of file
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
</configSections>
</configuration>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
</configSections>
</configuration>
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
# Copyright (c) Microsoft Corporation. All rights reserved.
$InitialDatabase = '0'
$knownExceptions = @(
'System.Data.Entity.Migrations.Infrastructure.MigrationsException',
'System.Data.Entity.Migrations.Infrastructure.AutomaticMigrationsDisabledException',
'System.Data.Entity.Migrations.Infrastructure.AutomaticDataLossException',
'System.Data.Entity.Migrations.Infrastructure.MigrationsPendingException',
'System.Data.Entity.Migrations.ProjectTypeNotSupportedException'
)
<#
.SYNOPSIS
Adds or updates an Entity Framework provider entry in the project config
file.
.DESCRIPTION
Adds an entry into the 'entityFramework' section of the project config
file for the specified provider invariant name and provider type. If an
entry for the given invariant name already exists, then that entry is
updated with the given type name, unless the given type name already
matches, in which case no action is taken. The 'entityFramework'
section is added if it does not exist. The config file is automatically
saved if and only if a change was made.
This command is typically used only by Entity Framework provider NuGet
packages and is run from the 'install.ps1' script.
.PARAMETER Project
The Visual Studio project to update. When running in the NuGet install.ps1
script the '$project' variable provided as part of that script should be
used.
.PARAMETER InvariantName
The provider invariant name that uniquely identifies this provider. For
example, the Microsoft SQL Server provider is registered with the invariant
name 'System.Data.SqlClient'.
.PARAMETER TypeName
The assembly-qualified type name of the provider-specific type that
inherits from 'System.Data.Entity.Core.Common.DbProviderServices'. For
example, for the Microsoft SQL Server provider, this type is
'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer'.
#>
function Add-EFProvider
{
param (
[parameter(Position = 0,
Mandatory = $true)]
$Project,
[parameter(Position = 1,
Mandatory = $true)]
[string] $InvariantName,
[parameter(Position = 2,
Mandatory = $true)]
[string] $TypeName
)
if (!(Check-Project $project))
{
return
}
$runner = New-EFConfigRunner $Project
try
{
Invoke-RunnerCommand $runner System.Data.Entity.ConnectionFactoryConfig.AddProviderCommand @( $InvariantName, $TypeName )
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
}
finally
{
Remove-Runner $runner
}
}
<#
.SYNOPSIS
Adds or updates an Entity Framework default connection factory in the
project config file.
.DESCRIPTION
Adds an entry into the 'entityFramework' section of the project config
file for the connection factory that Entity Framework will use by default
when creating new connections by convention. Any existing entry will be
overridden if it does not match. The 'entityFramework' section is added if
it does not exist. The config file is automatically saved if and only if
a change was made.
This command is typically used only by Entity Framework provider NuGet
packages and is run from the 'install.ps1' script.
.PARAMETER Project
The Visual Studio project to update. When running in the NuGet install.ps1
script the '$project' variable provided as part of that script should be
used.
.PARAMETER TypeName
The assembly-qualified type name of the connection factory type that
implements the 'System.Data.Entity.Infrastructure.IDbConnectionFactory'
interface. For example, for the Microsoft SQL Server Express provider
connection factory, this type is
'System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework'.
.PARAMETER ConstructorArguments
An optional array of strings that will be passed as arguments to the
connection factory type constructor.
#>
function Add-EFDefaultConnectionFactory
{
param (
[parameter(Position = 0,
Mandatory = $true)]
$Project,
[parameter(Position = 1,
Mandatory = $true)]
[string] $TypeName,
[string[]] $ConstructorArguments
)
if (!(Check-Project $project))
{
return
}
$runner = New-EFConfigRunner $Project
try
{
Invoke-RunnerCommand $runner System.Data.Entity.ConnectionFactoryConfig.AddDefaultConnectionFactoryCommand @( $TypeName, $ConstructorArguments )
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
}
finally
{
Remove-Runner $runner
}
}
<#
.SYNOPSIS
Initializes the Entity Framework section in the project config file
and sets defaults.
.DESCRIPTION
Creates the 'entityFramework' section of the project config file and sets
the default connection factory to use SQL Express if it is running on the
machine, or LocalDb otherwise. Note that installing a different provider
may change the default connection factory. The config file is
automatically saved if and only if a change was made.
In addition, any reference to 'System.Data.Entity.dll' in the project is
removed.
This command is typically used only by Entity Framework provider NuGet
packages and is run from the 'install.ps1' script.
.PARAMETER Project
The Visual Studio project to update. When running in the NuGet install.ps1
script the '$project' variable provided as part of that script should be
used.
#>
function Initialize-EFConfiguration
{
param (
[parameter(Position = 0,
Mandatory = $true)]
$Project
)
if (!(Check-Project $project))
{
return
}
$runner = New-EFConfigRunner $Project
try
{
Invoke-RunnerCommand $runner System.Data.Entity.ConnectionFactoryConfig.InitializeEntityFrameworkCommand
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
}
finally
{
Remove-Runner $runner
}
}
<#
.SYNOPSIS
Enables Code First Migrations in a project.
.DESCRIPTION
Enables Migrations by scaffolding a migrations configuration class in the project. If the
target database was created by an initializer, an initial migration will be created (unless
automatic migrations are enabled via the EnableAutomaticMigrations parameter).
.PARAMETER ContextTypeName
Specifies the context to use. If omitted, migrations will attempt to locate a
single context type in the target project.
.PARAMETER EnableAutomaticMigrations
Specifies whether automatic migrations will be enabled in the scaffolded migrations configuration.
If omitted, automatic migrations will be disabled.
.PARAMETER MigrationsDirectory
Specifies the name of the directory that will contain migrations code files.
If omitted, the directory will be named "Migrations".
.PARAMETER ProjectName
Specifies the project that the scaffolded migrations configuration class will
be added to. If omitted, the default project selected in package manager
console is used.
.PARAMETER StartUpProjectName
Specifies the configuration file to use for named connection strings. If
omitted, the specified project's configuration file is used.
.PARAMETER ContextProjectName
Specifies the project which contains the DbContext class to use. If omitted,
the context is assumed to be in the same project used for migrations.
.PARAMETER ConnectionStringName
Specifies the name of a connection string to use from the application's
configuration file.
.PARAMETER ConnectionString
Specifies the the connection string to use. If omitted, the context's
default connection will be used.
.PARAMETER ConnectionProviderName
Specifies the provider invariant name of the connection string.
.PARAMETER Force
Specifies that the migrations configuration be overwritten when running more
than once for a given project.
.PARAMETER ContextAssemblyName
Specifies the name of the assembly which contains the DbContext class to use. Use this
parameter instead of ContextProjectName when the context is contained in a referenced
assembly rather than in a project of the solution.
.PARAMETER AppDomainBaseDirectory
Specifies the directory to use for the app-domain that is used for running Migrations
code such that the app-domain is able to find all required assemblies. This is an
advanced option that should only be needed if the solution contains several projects
such that the assemblies needed for the context and configuration are not all
referenced from either the project containing the context or the project containing
the migrations.
.EXAMPLE
Enable-Migrations
# Scaffold a migrations configuration in a project with only one context
.EXAMPLE
Enable-Migrations -Auto
# Scaffold a migrations configuration with automatic migrations enabled for a project
# with only one context
.EXAMPLE
Enable-Migrations -ContextTypeName MyContext -MigrationsDirectory DirectoryName
# Scaffold a migrations configuration for a project with multiple contexts
# This scaffolds a migrations configuration for MyContext and will put the configuration
# and subsequent configurations in a new directory called "DirectoryName"
#>
function Enable-Migrations
{
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
param (
[string] $ContextTypeName,
[alias('Auto')]
[switch] $EnableAutomaticMigrations,
[string] $MigrationsDirectory,
[string] $ProjectName,
[string] $StartUpProjectName,
[string] $ContextProjectName,
[parameter(ParameterSetName = 'ConnectionStringName')]
[string] $ConnectionStringName,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionString,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionProviderName,
[switch] $Force,
[string] $ContextAssemblyName,
[string] $AppDomainBaseDirectory
)
$runner = New-MigrationsRunner $ProjectName $StartUpProjectName $ContextProjectName $null $ConnectionStringName $ConnectionString $ConnectionProviderName $ContextAssemblyName $AppDomainBaseDirectory
try
{
Invoke-RunnerCommand $runner System.Data.Entity.Migrations.EnableMigrationsCommand @( $EnableAutomaticMigrations.IsPresent, $Force.IsPresent ) @{ 'ContextTypeName' = $ContextTypeName; 'MigrationsDirectory' = $MigrationsDirectory }
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
$(Get-VSComponentModel).GetService([NuGetConsole.IPowerConsoleWindow]).Show()
}
finally
{
Remove-Runner $runner
}
}
<#
.SYNOPSIS
Scaffolds a migration script for any pending model changes.
.DESCRIPTION
Scaffolds a new migration script and adds it to the project.
.PARAMETER Name
Specifies the name of the custom script.
.PARAMETER Force
Specifies that the migration user code be overwritten when re-scaffolding an
existing migration.
.PARAMETER ProjectName
Specifies the project that contains the migration configuration type to be
used. If omitted, the default project selected in package manager console
is used.
.PARAMETER StartUpProjectName
Specifies the configuration file to use for named connection strings. If
omitted, the specified project's configuration file is used.
.PARAMETER ConfigurationTypeName
Specifies the migrations configuration to use. If omitted, migrations will
attempt to locate a single migrations configuration type in the target
project.
.PARAMETER ConnectionStringName
Specifies the name of a connection string to use from the application's
configuration file.
.PARAMETER ConnectionString
Specifies the the connection string to use. If omitted, the context's
default connection will be used.
.PARAMETER ConnectionProviderName
Specifies the provider invariant name of the connection string.
.PARAMETER IgnoreChanges
Scaffolds an empty migration ignoring any pending changes detected in the current model.
This can be used to create an initial, empty migration to enable Migrations for an existing
database. N.B. Doing this assumes that the target database schema is compatible with the
current model.
.PARAMETER AppDomainBaseDirectory
Specifies the directory to use for the app-domain that is used for running Migrations
code such that the app-domain is able to find all required assemblies. This is an
advanced option that should only be needed if the solution contains several projects
such that the assemblies needed for the context and configuration are not all
referenced from either the project containing the context or the project containing
the migrations.
.EXAMPLE
Add-Migration First
# Scaffold a new migration named "First"
.EXAMPLE
Add-Migration First -IgnoreChanges
# Scaffold an empty migration ignoring any pending changes detected in the current model.
# This can be used to create an initial, empty migration to enable Migrations for an existing
# database. N.B. Doing this assumes that the target database schema is compatible with the
# current model.
#>
function Add-Migration
{
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
param (
[parameter(Position = 0,
Mandatory = $true)]
[string] $Name,
[switch] $Force,
[string] $ProjectName,
[string] $StartUpProjectName,
[string] $ConfigurationTypeName,
[parameter(ParameterSetName = 'ConnectionStringName')]
[string] $ConnectionStringName,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionString,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionProviderName,
[switch] $IgnoreChanges,
[string] $AppDomainBaseDirectory)
$runner = New-MigrationsRunner $ProjectName $StartUpProjectName $null $ConfigurationTypeName $ConnectionStringName $ConnectionString $ConnectionProviderName $null $AppDomainBaseDirectory
try
{
Invoke-RunnerCommand $runner System.Data.Entity.Migrations.AddMigrationCommand @( $Name, $Force.IsPresent, $IgnoreChanges.IsPresent )
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
$(Get-VSComponentModel).GetService([NuGetConsole.IPowerConsoleWindow]).Show()
}
finally
{
Remove-Runner $runner
}
}
<#
.SYNOPSIS
Applies any pending migrations to the database.
.DESCRIPTION
Updates the database to the current model by applying pending migrations.
.PARAMETER SourceMigration
Only valid with -Script. Specifies the name of a particular migration to use
as the update's starting point. If omitted, the last applied migration in
the database will be used.
.PARAMETER TargetMigration
Specifies the name of a particular migration to update the database to. If
omitted, the current model will be used.
.PARAMETER Script
Generate a SQL script rather than executing the pending changes directly.
.PARAMETER Force
Specifies that data loss is acceptable during automatic migration of the
database.
.PARAMETER ProjectName
Specifies the project that contains the migration configuration type to be
used. If omitted, the default project selected in package manager console
is used.
.PARAMETER StartUpProjectName
Specifies the configuration file to use for named connection strings. If
omitted, the specified project's configuration file is used.
.PARAMETER ConfigurationTypeName
Specifies the migrations configuration to use. If omitted, migrations will
attempt to locate a single migrations configuration type in the target
project.
.PARAMETER ConnectionStringName
Specifies the name of a connection string to use from the application's
configuration file.
.PARAMETER ConnectionString
Specifies the the connection string to use. If omitted, the context's
default connection will be used.
.PARAMETER ConnectionProviderName
Specifies the provider invariant name of the connection string.
.PARAMETER AppDomainBaseDirectory
Specifies the directory to use for the app-domain that is used for running Migrations
code such that the app-domain is able to find all required assemblies. This is an
advanced option that should only be needed if the solution contains several projects
such that the assemblies needed for the context and configuration are not all
referenced from either the project containing the context or the project containing
the migrations.
.EXAMPLE
Update-Database
# Update the database to the latest migration
.EXAMPLE
Update-Database -TargetMigration Second
# Update database to a migration named "Second"
# This will apply migrations if the target hasn't been applied or roll back migrations
# if it has
.EXAMPLE
Update-Database -Script
# Generate a script to update the database from it's current state to the latest migration
.EXAMPLE
Update-Database -Script -SourceMigration Second -TargetMigration First
# Generate a script to migrate the database from a specified start migration
# named "Second" to a specified target migration named "First"
.EXAMPLE
Update-Database -Script -SourceMigration $InitialDatabase
# Generate a script that can upgrade a database currently at any version to the latest version.
# The generated script includes logic to check the __MigrationsHistory table and only apply changes
# that haven't been previously applied.
.EXAMPLE
Update-Database -TargetMigration $InitialDatabase
# Runs the Down method to roll-back any migrations that have been applied to the database
#>
function Update-Database
{
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
param (
[string] $SourceMigration,
[string] $TargetMigration,
[switch] $Script,
[switch] $Force,
[string] $ProjectName,
[string] $StartUpProjectName,
[string] $ConfigurationTypeName,
[parameter(ParameterSetName = 'ConnectionStringName')]
[string] $ConnectionStringName,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionString,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionProviderName,
[string] $AppDomainBaseDirectory)
$runner = New-MigrationsRunner $ProjectName $StartUpProjectName $null $ConfigurationTypeName $ConnectionStringName $ConnectionString $ConnectionProviderName $null $AppDomainBaseDirectory
try
{
Invoke-RunnerCommand $runner System.Data.Entity.Migrations.UpdateDatabaseCommand @( $SourceMigration, $TargetMigration, $Script.IsPresent, $Force.IsPresent, $Verbose.IsPresent )
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
$(Get-VSComponentModel).GetService([NuGetConsole.IPowerConsoleWindow]).Show()
}
finally
{
Remove-Runner $runner
}
}
<#
.SYNOPSIS
Displays the migrations that have been applied to the target database.
.DESCRIPTION
Displays the migrations that have been applied to the target database.
.PARAMETER ProjectName
Specifies the project that contains the migration configuration type to be
used. If omitted, the default project selected in package manager console
is used.
.PARAMETER StartUpProjectName
Specifies the configuration file to use for named connection strings. If
omitted, the specified project's configuration file is used.
.PARAMETER ConfigurationTypeName
Specifies the migrations configuration to use. If omitted, migrations will
attempt to locate a single migrations configuration type in the target
project.
.PARAMETER ConnectionStringName
Specifies the name of a connection string to use from the application's
configuration file.
.PARAMETER ConnectionString
Specifies the the connection string to use. If omitted, the context's
default connection will be used.
.PARAMETER ConnectionProviderName
Specifies the provider invariant name of the connection string.
.PARAMETER AppDomainBaseDirectory
Specifies the directory to use for the app-domain that is used for running Migrations
code such that the app-domain is able to find all required assemblies. This is an
advanced option that should only be needed if the solution contains several projects
such that the assemblies needed for the context and configuration are not all
referenced from either the project containing the context or the project containing
the migrations.
#>
function Get-Migrations
{
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
param (
[string] $ProjectName,
[string] $StartUpProjectName,
[string] $ConfigurationTypeName,
[parameter(ParameterSetName = 'ConnectionStringName')]
[string] $ConnectionStringName,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionString,
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
Mandatory = $true)]
[string] $ConnectionProviderName,
[string] $AppDomainBaseDirectory)
$runner = New-MigrationsRunner $ProjectName $StartUpProjectName $null $ConfigurationTypeName $ConnectionStringName $ConnectionString $ConnectionProviderName $null $AppDomainBaseDirectory
try
{
Invoke-RunnerCommand $runner System.Data.Entity.Migrations.GetMigrationsCommand
$error = Get-RunnerError $runner
if ($error)
{
if ($knownExceptions -notcontains $error.TypeName)
{
Write-Host $error.StackTrace
}
else
{
Write-Verbose $error.StackTrace
}
throw $error.Message
}
}
finally
{
Remove-Runner $runner
}
}
function New-MigrationsRunner($ProjectName, $StartUpProjectName, $ContextProjectName, $ConfigurationTypeName, $ConnectionStringName, $ConnectionString, $ConnectionProviderName, $ContextAssemblyName, $AppDomainBaseDirectory)
{
$startUpProject = Get-MigrationsStartUpProject $StartUpProjectName $ProjectName
Build-Project $startUpProject
$project = Get-MigrationsProject $ProjectName
Build-Project $project
$contextProject = $project
if ($ContextProjectName)
{
$contextProject = Get-SingleProject $ContextProjectName
Build-Project $contextProject
}
$installPath = Get-EntityFrameworkInstallPath $project
$toolsPath = Join-Path $installPath tools
$info = New-AppDomainSetup $project $installPath
$domain = [AppDomain]::CreateDomain('Migrations', $null, $info)
$domain.SetData('project', $project)
$domain.SetData('contextProject', $contextProject)
$domain.SetData('startUpProject', $startUpProject)
$domain.SetData('configurationTypeName', $ConfigurationTypeName)
$domain.SetData('connectionStringName', $ConnectionStringName)
$domain.SetData('connectionString', $ConnectionString)
$domain.SetData('connectionProviderName', $ConnectionProviderName)
$domain.SetData('contextAssemblyName', $ContextAssemblyName)
$domain.SetData('appDomainBaseDirectory', $AppDomainBaseDirectory)
$dispatcher = New-DomainDispatcher $toolsPath
$domain.SetData('efDispatcher', $dispatcher)
return @{
Domain = $domain;
ToolsPath = $toolsPath
}
}
function New-EFConfigRunner($Project)
{
$installPath = Get-EntityFrameworkInstallPath $Project
$toolsPath = Join-Path $installPath tools
$info = New-AppDomainSetup $Project $installPath
$domain = [AppDomain]::CreateDomain('EFConfig', $null, $info)
$domain.SetData('project', $Project)
$dispatcher = New-DomainDispatcher $toolsPath
$domain.SetData('efDispatcher', $dispatcher)
return @{
Domain = $domain;
ToolsPath = $toolsPath
}
}
function New-AppDomainSetup($Project, $InstallPath)
{
$info = New-Object System.AppDomainSetup -Property @{
ShadowCopyFiles = 'true';
ApplicationBase = $InstallPath;
PrivateBinPath = 'tools';
ConfigurationFile = ([AppDomain]::CurrentDomain.SetupInformation.ConfigurationFile)
}
$targetFrameworkVersion = (New-Object System.Runtime.Versioning.FrameworkName ($Project.Properties.Item('TargetFrameworkMoniker').Value)).Version
if ($targetFrameworkVersion -lt (New-Object Version @( 4, 5 )))
{
$info.PrivateBinPath += ';lib\net40'
}
else
{
$info.PrivateBinPath += ';lib\net45'
}
return $info
}
function New-DomainDispatcher($ToolsPath)
{
$utilityAssembly = [System.Reflection.Assembly]::LoadFrom((Join-Path $ToolsPath EntityFramework.PowerShell.Utility.dll))
$dispatcher = $utilityAssembly.CreateInstance(
'System.Data.Entity.Migrations.Utilities.DomainDispatcher',
$false,
[System.Reflection.BindingFlags]::Instance -bor [System.Reflection.BindingFlags]::Public,
$null,
$PSCmdlet,
$null,
$null)
return $dispatcher
}
function Remove-Runner($runner)
{
[AppDomain]::Unload($runner.Domain)
}
function Invoke-RunnerCommand($runner, $command, $parameters, $anonymousArguments)
{
$domain = $runner.Domain
if ($anonymousArguments)
{
$anonymousArguments.GetEnumerator() | %{
$domain.SetData($_.Name, $_.Value)
}
}
$domain.CreateInstanceFrom(
(Join-Path $runner.ToolsPath EntityFramework.PowerShell.dll),
$command,
$false,
0,
$null,
$parameters,
$null,
$null) | Out-Null
}
function Get-RunnerError($runner)
{
$domain = $runner.Domain
if (!$domain.GetData('wasError'))
{
return $null
}
return @{
Message = $domain.GetData('error.Message');
TypeName = $domain.GetData('error.TypeName');
StackTrace = $domain.GetData('error.StackTrace')
}
}
function Get-MigrationsProject($name, $hideMessage)
{
if ($name)
{
return Get-SingleProject $name
}
$project = Get-Project
$projectName = $project.Name
if (!$hideMessage)
{
Write-Verbose "Using NuGet project '$projectName'."
}
return $project
}
function Get-MigrationsStartUpProject($name, $fallbackName)
{
$startUpProject = $null
if ($name)
{
$startUpProject = Get-SingleProject $name
}
else
{
$startupProjectPaths = $DTE.Solution.SolutionBuild.StartupProjects
if ($startupProjectPaths)
{
if ($startupProjectPaths.Length -eq 1)
{
$startupProjectPath = $startupProjectPaths[0]
if (!(Split-Path -IsAbsolute $startupProjectPath))
{
$solutionPath = Split-Path $DTE.Solution.Properties.Item('Path').Value
$startupProjectPath = Join-Path $solutionPath $startupProjectPath -Resolve
}
$startupProject = Get-SolutionProjects | ?{
try
{
$fullName = $_.FullName
}
catch [NotImplementedException]
{
return $false
}
if ($fullName -and $fullName.EndsWith('\'))
{
$fullName = $fullName.Substring(0, $fullName.Length - 1)
}
return $fullName -eq $startupProjectPath
}
}
else
{
Write-Verbose 'More than one start-up project found.'
}
}
else
{
Write-Verbose 'No start-up project found.'
}
}
if (!($startUpProject -and (Test-StartUpProject $startUpProject)))
{
$startUpProject = Get-MigrationsProject $fallbackName $true
$startUpProjectName = $startUpProject.Name
Write-Warning "Cannot determine a valid start-up project. Using project '$startUpProjectName' instead. Your configuration file and working directory may not be set as expected. Use the -StartUpProjectName parameter to set one explicitly. Use the -Verbose switch for more information."
}
else
{
$startUpProjectName = $startUpProject.Name
Write-Verbose "Using StartUp project '$startUpProjectName'."
}
return $startUpProject
}
function Get-SolutionProjects()
{
$projects = New-Object System.Collections.Stack
$DTE.Solution.Projects | %{
$projects.Push($_)
}
while ($projects.Count -ne 0)
{
$project = $projects.Pop();
# NOTE: This line is similar to doing a "yield return" in C#
$project
if ($project.ProjectItems)
{
$project.ProjectItems | ?{ $_.SubProject } | %{
$projects.Push($_.SubProject)
}
}
}
}
function Get-SingleProject($name)
{
$project = Get-Project $name
if ($project -is [array])
{
throw "More than one project '$name' was found. Specify the full name of the one to use."
}
return $project
}
function Test-StartUpProject($project)
{
if ($project.Kind -eq '{cc5fd16d-436d-48ad-a40c-5a424c6e3e79}')
{
$projectName = $project.Name
Write-Verbose "Cannot use start-up project '$projectName'. The Windows Azure Project type isn't supported."
return $false
}
return $true
}
function Build-Project($project)
{
$configuration = $DTE.Solution.SolutionBuild.ActiveConfiguration.Name
$DTE.Solution.SolutionBuild.BuildProject($configuration, $project.UniqueName, $true)
if ($DTE.Solution.SolutionBuild.LastBuildInfo)
{
$projectName = $project.Name
throw "The project '$projectName' failed to build."
}
}
function Get-EntityFrameworkInstallPath($project)
{
$package = Get-Package -ProjectName $project.FullName | ?{ $_.Id -eq 'EntityFramework' }
if (!$package)
{
$projectName = $project.Name
throw "The EntityFramework package is not installed on project '$projectName'."
}
return Get-PackageInstallPath $package
}
function Get-PackageInstallPath($package)
{
$componentModel = Get-VsComponentModel
$packageInstallerServices = $componentModel.GetService([NuGet.VisualStudio.IVsPackageInstallerServices])
$vsPackage = $packageInstallerServices.GetInstalledPackages() | ?{ $_.Id -eq $package.Id -and $_.Version -eq $package.Version }
return $vsPackage.InstallPath
}
function Check-Project($project)
{
if (!$project.FullName)
{
throw "The Project argument must refer to a Visual Studio project. Use the '`$project' variable provided by NuGet when running in install.ps1."
}
return $project.CodeModel
}
Export-ModuleMember @( 'Enable-Migrations', 'Add-Migration', 'Update-Database', 'Get-Migrations', 'Add-EFProvider', 'Add-EFDefaultConnectionFactory', 'Initialize-EFConfiguration') -Variable InitialDatabase
# SIG # Begin signature block
# MIIa2AYJKoZIhvcNAQcCoIIayTCCGsUCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQU3poUYDlTlwf2GyqxNJ7CRJO4
# tk2gghV6MIIEuzCCA6OgAwIBAgITMwAAAFrtL/TkIJk/OgAAAAAAWjANBgkqhkiG
# 9w0BAQUFADB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G
# A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEw
# HwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwHhcNMTQwNTIzMTcxMzE1
# WhcNMTUwODIzMTcxMzE1WjCBqzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw
# DgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24x
# DTALBgNVBAsTBE1PUFIxJzAlBgNVBAsTHm5DaXBoZXIgRFNFIEVTTjpCOEVDLTMw
# QTQtNzE0NDElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2VydmljZTCC
# ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALMhIt9q0L/7KcnVbHqJqY0T
# vJS16X0pZdp/9B+rDHlhZlRhlgfw1GBLMZsJr30obdCle4dfdqHSxinHljqjXxeM
# duC3lgcPx2JhtLaq9kYUKQMuJrAdSgjgfdNcMBKmm/a5Dj1TFmmdu2UnQsHoMjUO
# 9yn/3lsgTLsvaIQkD6uRxPPOKl5YRu2pRbRptlQmkRJi/W8O5M/53D/aKWkfSq7u
# wIJC64Jz6VFTEb/dqx1vsgpQeAuD7xsIsxtnb9MFfaEJn8J3iKCjWMFP/2fz3uzH
# 9TPcikUOlkYUKIccYLf1qlpATHC1acBGyNTo4sWQ3gtlNdRUgNLpnSBWr9TfzbkC
# AwEAAaOCAQkwggEFMB0GA1UdDgQWBBS+Z+AuAhuvCnINOh1/jJ1rImYR9zAfBgNV
# HSMEGDAWgBQjNPjZUkZwCu1A+3b7syuwwzWzDzBUBgNVHR8ETTBLMEmgR6BFhkNo
# dHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpL2NybC9wcm9kdWN0cy9NaWNyb3Nv
# ZnRUaW1lU3RhbXBQQ0EuY3JsMFgGCCsGAQUFBwEBBEwwSjBIBggrBgEFBQcwAoY8
# aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNyb3NvZnRUaW1l
# U3RhbXBQQ0EuY3J0MBMGA1UdJQQMMAoGCCsGAQUFBwMIMA0GCSqGSIb3DQEBBQUA
# A4IBAQAgU4KQrqZNTn4zScizrcTDfhXQEvIPJ4p/W78+VOpB6VQDKym63VSIu7n3
# 2c5T7RAWPclGcLQA0fI0XaejIiyqIuFrob8PDYfQHgIb73i2iSDQLKsLdDguphD/
# 2pGrLEA8JhWqrN7Cz0qTA81r4qSymRpdR0Tx3IIf5ki0pmmZwS7phyPqCNJp5mLf
# cfHrI78hZfmkV8STLdsWeBWqPqLkhfwXvsBPFduq8Ki6ESus+is1Fm5bc/4w0Pur
# k6DezULaNj+R9+A3jNkHrTsnu/9UIHfG/RHpGuZpsjMnqwWuWI+mqX9dEhFoDCyj
# MRYNviGrnPCuGnxA1daDFhXYKPvlMIIE7DCCA9SgAwIBAgITMwAAAMps1TISNcTh
# VQABAAAAyjANBgkqhkiG9w0BAQUFADB5MQswCQYDVQQGEwJVUzETMBEGA1UECBMK
# V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0
# IENvcnBvcmF0aW9uMSMwIQYDVQQDExpNaWNyb3NvZnQgQ29kZSBTaWduaW5nIFBD
# QTAeFw0xNDA0MjIxNzM5MDBaFw0xNTA3MjIxNzM5MDBaMIGDMQswCQYDVQQGEwJV
# UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UE
# ChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMQ0wCwYDVQQLEwRNT1BSMR4wHAYDVQQD
# ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
# ggEKAoIBAQCWcV3tBkb6hMudW7dGx7DhtBE5A62xFXNgnOuntm4aPD//ZeM08aal
# IV5WmWxY5JKhClzC09xSLwxlmiBhQFMxnGyPIX26+f4TUFJglTpbuVildGFBqZTg
# rSZOTKGXcEknXnxnyk8ecYRGvB1LtuIPxcYnyQfmegqlFwAZTHBFOC2BtFCqxWfR
# +nm8xcyhcpv0JTSY+FTfEjk4Ei+ka6Wafsdi0dzP7T00+LnfNTC67HkyqeGprFVN
# TH9MVsMTC3bxB/nMR6z7iNVSpR4o+j0tz8+EmIZxZRHPhckJRIbhb+ex/KxARKWp
# iyM/gkmd1ZZZUBNZGHP/QwytK9R/MEBnAgMBAAGjggFgMIIBXDATBgNVHSUEDDAK
# BggrBgEFBQcDAzAdBgNVHQ4EFgQUH17iXVCNVoa+SjzPBOinh7XLv4MwUQYDVR0R
# BEowSKRGMEQxDTALBgNVBAsTBE1PUFIxMzAxBgNVBAUTKjMxNTk1K2I0MjE4ZjEz
# LTZmY2EtNDkwZi05YzQ3LTNmYzU1N2RmYzQ0MDAfBgNVHSMEGDAWgBTLEejK0rQW
# WAHJNy4zFha5TJoKHzBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8vY3JsLm1pY3Jv
# c29mdC5jb20vcGtpL2NybC9wcm9kdWN0cy9NaWNDb2RTaWdQQ0FfMDgtMzEtMjAx
# MC5jcmwwWgYIKwYBBQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRwOi8vd3d3Lm1p
# Y3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY0NvZFNpZ1BDQV8wOC0zMS0yMDEwLmNy
# dDANBgkqhkiG9w0BAQUFAAOCAQEAd1zr15E9zb17g9mFqbBDnXN8F8kP7Tbbx7Us
# G177VAU6g3FAgQmit3EmXtZ9tmw7yapfXQMYKh0nfgfpxWUftc8Nt1THKDhaiOd7
# wRm2VjK64szLk9uvbg9dRPXUsO8b1U7Brw7vIJvy4f4nXejF/2H2GdIoCiKd381w
# gp4YctgjzHosQ+7/6sDg5h2qnpczAFJvB7jTiGzepAY1p8JThmURdwmPNVm52Iao
# AP74MX0s9IwFncDB1XdybOlNWSaD8cKyiFeTNQB8UCu8Wfz+HCk4gtPeUpdFKRhO
# lludul8bo/EnUOoHlehtNA04V9w3KDWVOjic1O1qhV0OIhFeezCCBbwwggOkoAMC
# AQICCmEzJhoAAAAAADEwDQYJKoZIhvcNAQEFBQAwXzETMBEGCgmSJomT8ixkARkW
# A2NvbTEZMBcGCgmSJomT8ixkARkWCW1pY3Jvc29mdDEtMCsGA1UEAxMkTWljcm9z
# b2Z0IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4XDTEwMDgzMTIyMTkzMloX
# DTIwMDgzMTIyMjkzMloweTELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0
# b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh
# dGlvbjEjMCEGA1UEAxMaTWljcm9zb2Z0IENvZGUgU2lnbmluZyBQQ0EwggEiMA0G
# CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCycllcGTBkvx2aYCAgQpl2U2w+G9Zv
# zMvx6mv+lxYQ4N86dIMaty+gMuz/3sJCTiPVcgDbNVcKicquIEn08GisTUuNpb15
# S3GbRwfa/SXfnXWIz6pzRH/XgdvzvfI2pMlcRdyvrT3gKGiXGqelcnNW8ReU5P01
# lHKg1nZfHndFg4U4FtBzWwW6Z1KNpbJpL9oZC/6SdCnidi9U3RQwWfjSjWL9y8lf
# RjFQuScT5EAwz3IpECgixzdOPaAyPZDNoTgGhVxOVoIoKgUyt0vXT2Pn0i1i8UU9
# 56wIAPZGoZ7RW4wmU+h6qkryRs83PDietHdcpReejcsRj1Y8wawJXwPTAgMBAAGj
# ggFeMIIBWjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTLEejK0rQWWAHJNy4z
# Fha5TJoKHzALBgNVHQ8EBAMCAYYwEgYJKwYBBAGCNxUBBAUCAwEAATAjBgkrBgEE
# AYI3FQIEFgQU/dExTtMmipXhmGA7qDFvpjy82C0wGQYJKwYBBAGCNxQCBAweCgBT
# AHUAYgBDAEEwHwYDVR0jBBgwFoAUDqyCYEBWJ5flJRP8KuEKU5VZ5KQwUAYDVR0f
# BEkwRzBFoEOgQYY/aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwvcHJv
# ZHVjdHMvbWljcm9zb2Z0cm9vdGNlcnQuY3JsMFQGCCsGAQUFBwEBBEgwRjBEBggr
# BgEFBQcwAoY4aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNy
# b3NvZnRSb290Q2VydC5jcnQwDQYJKoZIhvcNAQEFBQADggIBAFk5Pn8mRq/rb0Cx
# MrVq6w4vbqhJ9+tfde1MOy3XQ60L/svpLTGjI8x8UJiAIV2sPS9MuqKoVpzjcLu4
# tPh5tUly9z7qQX/K4QwXaculnCAt+gtQxFbNLeNK0rxw56gNogOlVuC4iktX8pVC
# nPHz7+7jhh80PLhWmvBTI4UqpIIck+KUBx3y4k74jKHK6BOlkU7IG9KPcpUqcW2b
# Gvgc8FPWZ8wi/1wdzaKMvSeyeWNWRKJRzfnpo1hW3ZsCRUQvX/TartSCMm78pJUT
# 5Otp56miLL7IKxAOZY6Z2/Wi+hImCWU4lPF6H0q70eFW6NB4lhhcyTUWX92THUmO
# Lb6tNEQc7hAVGgBd3TVbIc6YxwnuhQ6MT20OE049fClInHLR82zKwexwo1eSV32U
# jaAbSANa98+jZwp0pTbtLS8XyOZyNxL0b7E8Z4L5UrKNMxZlHg6K3RDeZPRvzkbU
# 0xfpecQEtNP7LN8fip6sCvsTJ0Ct5PnhqX9GuwdgR2VgQE6wQuxO7bN2edgKNAlt
# HIAxH+IOVN3lofvlRxCtZJj/UBYufL8FIXrilUEnacOTj5XJjdibIa4NXJzwoq6G
# aIMMai27dmsAHZat8hZ79haDJLmIz2qoRzEvmtzjcT3XAH5iR9HOiMm4GPoOco3B
# oz2vAkBq/2mbluIQqBC0N1AI1sM9MIIGBzCCA++gAwIBAgIKYRZoNAAAAAAAHDAN
# BgkqhkiG9w0BAQUFADBfMRMwEQYKCZImiZPyLGQBGRYDY29tMRkwFwYKCZImiZPy
# LGQBGRYJbWljcm9zb2Z0MS0wKwYDVQQDEyRNaWNyb3NvZnQgUm9vdCBDZXJ0aWZp
# Y2F0ZSBBdXRob3JpdHkwHhcNMDcwNDAzMTI1MzA5WhcNMjEwNDAzMTMwMzA5WjB3
# MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVk
# bW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEwHwYDVQQDExhN
# aWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
# ggEKAoIBAQCfoWyx39tIkip8ay4Z4b3i48WZUSNQrc7dGE4kD+7Rp9FMrXQwIBHr
# B9VUlRVJlBtCkq6YXDAm2gBr6Hu97IkHD/cOBJjwicwfyzMkh53y9GccLPx754gd
# 6udOo6HBI1PKjfpFzwnQXq/QsEIEovmmbJNn1yjcRlOwhtDlKEYuJ6yGT1VSDOQD
# LPtqkJAwbofzWTCd+n7Wl7PoIZd++NIT8wi3U21StEWQn0gASkdmEScpZqiX5NMG
# gUqi+YSnEUcUCYKfhO1VeP4Bmh1QCIUAEDBG7bfeI0a7xC1Un68eeEExd8yb3zuD
# k6FhArUdDbH895uyAc4iS1T/+QXDwiALAgMBAAGjggGrMIIBpzAPBgNVHRMBAf8E
# BTADAQH/MB0GA1UdDgQWBBQjNPjZUkZwCu1A+3b7syuwwzWzDzALBgNVHQ8EBAMC
# AYYwEAYJKwYBBAGCNxUBBAMCAQAwgZgGA1UdIwSBkDCBjYAUDqyCYEBWJ5flJRP8
# KuEKU5VZ5KShY6RhMF8xEzARBgoJkiaJk/IsZAEZFgNjb20xGTAXBgoJkiaJk/Is
# ZAEZFgltaWNyb3NvZnQxLTArBgNVBAMTJE1pY3Jvc29mdCBSb290IENlcnRpZmlj
# YXRlIEF1dGhvcml0eYIQea0WoUqgpa1Mc1j0BxMuZTBQBgNVHR8ESTBHMEWgQ6BB
# hj9odHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpL2NybC9wcm9kdWN0cy9taWNy
# b3NvZnRyb290Y2VydC5jcmwwVAYIKwYBBQUHAQEESDBGMEQGCCsGAQUFBzAChjho
# dHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY3Jvc29mdFJvb3RD
# ZXJ0LmNydDATBgNVHSUEDDAKBggrBgEFBQcDCDANBgkqhkiG9w0BAQUFAAOCAgEA
# EJeKw1wDRDbd6bStd9vOeVFNAbEudHFbbQwTq86+e4+4LtQSooxtYrhXAstOIBNQ
# md16QOJXu69YmhzhHQGGrLt48ovQ7DsB7uK+jwoFyI1I4vBTFd1Pq5Lk541q1YDB
# 5pTyBi+FA+mRKiQicPv2/OR4mS4N9wficLwYTp2OawpylbihOZxnLcVRDupiXD8W
# mIsgP+IHGjL5zDFKdjE9K3ILyOpwPf+FChPfwgphjvDXuBfrTot/xTUrXqO/67x9
# C0J71FNyIe4wyrt4ZVxbARcKFA7S2hSY9Ty5ZlizLS/n+YWGzFFW6J1wlGysOUzU
# 9nm/qhh6YinvopspNAZ3GmLJPR5tH4LwC8csu89Ds+X57H2146SodDW4TsVxIxIm
# dgs8UoxxWkZDFLyzs7BNZ8ifQv+AeSGAnhUwZuhCEl4ayJ4iIdBD6Svpu/RIzCzU
# 2DKATCYqSCRfWupW76bemZ3KOm+9gSd0BhHudiG/m4LBJ1S2sWo9iaF2YbRuoROm
# v6pH8BJv/YoybLL+31HIjCPJZr2dHYcSZAI9La9Zj7jkIeW1sMpjtHhUBdRBLlCs
# lLCleKuzoJZ1GtmShxN1Ii8yqAhuoFuMJb+g74TKIdbrHk/Jmu5J4PcBZW+JC33I
# acjmbuqnl84xKf8OxVtc2E0bodj6L54/LlUWa8kTo/0xggTIMIIExAIBATCBkDB5
# MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVk
# bW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSMwIQYDVQQDExpN
# aWNyb3NvZnQgQ29kZSBTaWduaW5nIFBDQQITMwAAAMps1TISNcThVQABAAAAyjAJ
# BgUrDgMCGgUAoIHhMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQB
# gjcCAQsxDjAMBgorBgEEAYI3AgEVMCMGCSqGSIb3DQEJBDEWBBRRBMx7lzrmFHTD
# FOnHF79/U4hcUzCBgAYKKwYBBAGCNwIBDDFyMHCgUoBQAEUAbgB0AGkAdAB5ACAA
# RgByAGEAbQBlAHcAbwByAGsAIABUAG8AbwBsAHMAIABmAG8AcgAgAFYAaQBzAHUA
# YQBsACAAUwB0AHUAZABpAG+hGoAYaHR0cDovL21zZG4uY29tL2RhdGEvZWYgMA0G
# CSqGSIb3DQEBAQUABIIBAEd5PEhtVawenxHsuUSbbOUgAVuGOnlVja6G8O5u3I5v
# AcWqJtbqOKUkXc9HxAUMgu5cC/o9n8A7LF7T5xptiXXcxURfe4fmeJK9joz/XPRw
# lYLOevzn9GRfWSbJ/AtSOnjj1PKCtQ8SZq88iKnJ8SrjKF4Nu3TQR/wVR/k3SU0H
# 80Rm4lSJdt9NLxkYljaU8volXVDv9SoxDlplkGdePSbDUx3PWD7y5UVeHb94Z+aQ
# 8p/FuvncjarLeefLhOwEFfJRhCKvofgw2zJqA3q+m42uiuO0ndqbyp8HVc6kcMUu
# jS//9eYvnLP7UY1ApfiBLRPgEgTGSx/soOI2qXDjHiShggIoMIICJAYJKoZIhvcN
# AQkGMYICFTCCAhECAQEwgY4wdzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp
# bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw
# b3JhdGlvbjEhMB8GA1UEAxMYTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBAhMzAAAA
# Wu0v9OQgmT86AAAAAABaMAkGBSsOAwIaBQCgXTAYBgkqhkiG9w0BCQMxCwYJKoZI
# hvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xNTAzMDIxNzI5NThaMCMGCSqGSIb3DQEJ
# BDEWBBQXVgYJisiba3bvHeGxFzocarwSvzANBgkqhkiG9w0BAQUFAASCAQBwjV/u
# vAXQsEgY0oeyfvDyZCXIBSMgSZ4sbxAFu7ZGisn3L51Q/wWulmoPr7YiAmUkxRgU
# WL7hukD/WrR/iNwUToPwz9VTxZbz+i7Cjw5tpG+nL8ByWxyhEiWNDSGHUaU+THMr
# d2Y3mJs9u8E8sjNqHE8Vf7FzmjVn5dMrOASBmqTdXPwJP2Pm2gYta6zkss9j5N3Q
# MLwNDUrZ0FKtGimpe1zoI6Fan4YBKMILOL9xCqMcVMhoITM7s+tnRlngDVFxxKyN
# 1Mnr9ITkdiMIpbWn8s0nr/UsHRltjyPyjtfIvgiFgKLxnw87sHnloEAbksaLqlbX
# 6d/6I/2PpumqJR3c
# SIG # End signature block
TOPIC
about_EntityFramework
SHORT DESCRIPTION
Provides information about Entity Framework commands.
LONG DESCRIPTION
This topic describes the Entity Framework commands. Entity Framework is
Microsoft's recommended data access technology for new applications.
The following Entity Framework cmdlets are used with Entity Framework
Migrations.
Cmdlet Description
----------------- ---------------------------------------------------
Enable-Migrations Enables Code First Migrations in a project.
Add-Migration Scaffolds a migration script for any pending model
changes.
Update-Database Applies any pending migrations to the database.
Get-Migrations Displays the migrations that have been applied to
the target database.
The following Entity Framework cmdlets are used by NuGet packages that
install Entity Framework providers. These commands are not usually used as
part of normal application development.
Cmdlet Description
------------------------------ ---------------------------------------
Add-EFProvider Adds or updates an Entity Framework
provider entry in the project config
file.
Add-EFDefaultConnectionFactory Adds or updates an Entity Framework
default connection factory in the
project config file.
Initialize-EFConfiguration Initializes the Entity Framework
section in the project config file and
sets defaults.
SEE ALSO
Enable-Migrations
Add-Migration
Update-Database
Get-Migrations
param($installPath, $toolsPath, $package, $project) param($installPath, $toolsPath, $package, $project)
$packagePath = (New-Object system.IO.DirectoryInfo $toolsPath).Parent.FullName if (Get-Module | ?{ $_.Name -eq 'EntityFramework' })
$cppBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\msvcr100.dll"
$cppBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\msvcr100.dll"
$sqlBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\SqlServerSpatial110.dll"
$sqlBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\SqlServerSpatial110.dll"
$sqlServerTypes = $project.ProjectItems.Item("SqlServerTypes")
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if (!$folderx86)
{
$folderx86 = $sqlServerTypes.ProjectItems.AddFolder("x86")
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if (!$folderx64)
{
$folderx64 = $sqlServerTypes.ProjectItems.AddFolder("x64")
}
$cppLinkx86 = $folderx86.ProjectItems | where Name -eq "msvcr100.dll"
if (!$cppLinkx86)
{ {
$cppLinkx86 = $folderx86.ProjectItems.AddFromFile($cppBinaryPathx86) Remove-Module EntityFramework
$cppLinkx86.Properties.Item("CopyToOutputDirectory").Value = 1
} }
$sqlLinkx86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial110.dll" Import-Module (Join-Path $toolsPath EntityFramework.psd1)
if (!$sqlLinkx86)
{
$sqlLinkx86 = $folderx86.ProjectItems.AddFromFile($sqlBinaryPathx86)
$sqlLinkx86.Properties.Item("CopyToOutputDirectory").Value = 1
}
$cppLinkx64 = $folderx64.ProjectItems | where Name -eq "msvcr100.dll"
if (!$cppLinkx64)
{
$cppLinkx64 = $folderx64.ProjectItems.AddFromFile($cppBinaryPathx64)
$cppLinkx64.Properties.Item("CopyToOutputDirectory").Value = 1
}
$sqlLinkx64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if (!$sqlLinkx64)
{
$sqlLinkx64 = $folderx64.ProjectItems.AddFromFile($sqlBinaryPathx64)
$sqlLinkx64.Properties.Item("CopyToOutputDirectory").Value = 1
}
$readmefile = Join-Path (Split-Path $project.FileName) "SqlServerTypes\readme.htm"
$dte.ItemOperations.Navigate($readmefile)
# SIG # Begin signature block # SIG # Begin signature block
# MIIa1wYJKoZIhvcNAQcCoIIayDCCGsQCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB # MIIa4AYJKoZIhvcNAQcCoIIa0TCCGs0CAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR # gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUeJ15lp1p36VB4k/kIljX+MYo # AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUjXj4E03IfImYfKMB4CA3DfY0
# DaKgghWCMIIEwzCCA6ugAwIBAgITMwAAADPlJ4ajDkoqgAAAAAAAMzANBgkqhkiG # KZmgghWCMIIEwzCCA6ugAwIBAgITMwAAAGJBL8dNiq4TJgAAAAAAYjANBgkqhkiG
# 9w0BAQUFADB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G # 9w0BAQUFADB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G
# A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEw # A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEw
# HwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwHhcNMTMwMzI3MjAwODIz # HwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwHhcNMTUwMjEwMTgzMzM3
# WhcNMTQwNjI3MjAwODIzWjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp # WhcNMTYwNTEwMTgzMzM3WjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp
# bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw # bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw
# b3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNO # b3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNO
# OkY1MjgtMzc3Ny04QTc2MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBT # OkMwRjQtMzA4Ni1ERUY4MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBT
# ZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyt7KGQ8fllaC # ZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzpcpEnjOg16e
# X9hCMtQIbbadwMLtfDirWDOta4FQuIghCl2vly2QWsfDLrJM1GN0WP3fxYlU0AvM # fCoOjWmTxe4NOad07kj+GNlAGb0eel7cppX64uGPcUvvOPSAmxheqTjM2PBEtHGN
# /ZyEEXmsoyEibTPgrt4lQEWSTg1jCCuLN91PB2rcKs8QWo9XXZ09+hdjAsZwPrsi # qjqD6M7STHM5hsVJ0dWsK+5KEY8IbIYHIxJJrNyF5rDLJ3lKlKFVo1mgn/oZM4cM
# 7Vux9zK65HG8ef/4y+lXP3R75vJ9fFdYL6zSDqjZiNlAHzoiQeIJJgKgzOUlzoxn # CgfokLOayjIvyxuJIFrFbpO+nF+PhuI3MYT+lsHKdg2ErCNF0Y3KNvmDtP9XBiRK
# g99G+IVNw9pmHsdzfju0dhempaCgdFWo5WAYQWI4x2VGqwQWZlbq+abLQs9dVGQv # iGS7pVlKB4oaueB+94csweq7LXrUTrOcP8a6hRKzNqjR4pAcybwv508B4otK+jbX
# gfjPOAAPEGvhgy6NPkjsSVZK7Jpp9MsPEPsHNEpibAGNbscghMpc0WOZHo5d7A+l # lmE2ldsEysu9mwjN1fyDVSnWheoGZiXw3pxG9FeeXsOkNLibTtUVrjkcohq6hvb7
# Fkiqa94hLwIDAQABo4IBCTCCAQUwHQYDVR0OBBYEFABYGz7txfEGk74xPTa0rAtd # 7q4dco7enQIDAQABo4IBCTCCAQUwHQYDVR0OBBYEFJsuiFXbFF3ayMLtg9j5aH6D
# MvCBMB8GA1UdIwQYMBaAFCM0+NlSRnAK7UD7dvuzK7DDNbMPMFQGA1UdHwRNMEsw # oTnHMB8GA1UdIwQYMBaAFCM0+NlSRnAK7UD7dvuzK7DDNbMPMFQGA1UdHwRNMEsw
# SaBHoEWGQ2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3Rz # SaBHoEWGQ2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3Rz
# L01pY3Jvc29mdFRpbWVTdGFtcFBDQS5jcmwwWAYIKwYBBQUHAQEETDBKMEgGCCsG # L01pY3Jvc29mdFRpbWVTdGFtcFBDQS5jcmwwWAYIKwYBBQUHAQEETDBKMEgGCCsG
# AQUFBzAChjxodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY3Jv # AQUFBzAChjxodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY3Jv
# c29mdFRpbWVTdGFtcFBDQS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZI # c29mdFRpbWVTdGFtcFBDQS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZI
# hvcNAQEFBQADggEBAAL/44wD6u9+OLm5fJ87UoOk+iM41AO4alm16uBviAP0b1Fq # hvcNAQEFBQADggEBAAytzvTw859N7K64VMzmnhXGV4ZOeMnn/AJgqOUGsIrVqmth
# lTp1hegc3AfFTp0bqM4kRxQkTzV3sZy8J3uPXU/8BouXl/kpm/dAHVKBjnZIA37y # oqscqKq9fSnj3QlC3kyXFID7S69GmvDfylA/mu6HSe0mytg8svbYu7p6arQWe8q1
# mxe3rtlbIpFjOzJfNfvGkTzM7w6ZgD4GkTgTegxMvjPbv+2tQcZ8GyR8E9wK/EuK # 2kdagS1kFPBqUySyEx5pdI0r+9WejW98lNiY4PNgoqdvFZaU4fp1tsbJ8f6rJZ7U
# IAUdCYmROQdOIU7ebHxwu6vxII74mHhg3IuUz2W+lpAPoJyE7Vy1fEGgYS29Q2dl # tVCLOYHbDvlhU0LjKpbCgZ0VlR4Kk1SUuclxtIVETpHS5ToC1EzQRIGLsvkOxg7p
# GiqC1KeKWfcy46PnxY2yIruSKNiwjFOPaEdHodgBsPFhFcQXoS3jOmxPb6897t4p # Kf/MkuGM4R4dYIVZpPQYLeTb0o0hdnXXez1za9a9zaa/imKXyiV53z1loGFVVYqH
# sETLw5JnugDOD44R79ECgjFJlJidUUh4rR3WQLYwggTsMIID1KADAgECAhMzAAAA # AnYnCMw5M16oWdKeG7OaT+qFQL5aK0SaoZSHpuswggTsMIID1KADAgECAhMzAAAA
# sBGvCovQO5/dAAEAAACwMA0GCSqGSIb3DQEBBQUAMHkxCzAJBgNVBAYTAlVTMRMw # ymzVMhI1xOFVAAEAAADKMA0GCSqGSIb3DQEBBQUAMHkxCzAJBgNVBAYTAlVTMRMw
# EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN # EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN
# aWNyb3NvZnQgQ29ycG9yYXRpb24xIzAhBgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNp # aWNyb3NvZnQgQ29ycG9yYXRpb24xIzAhBgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNp
# Z25pbmcgUENBMB4XDTEzMDEyNDIyMzMzOVoXDTE0MDQyNDIyMzMzOVowgYMxCzAJ # Z25pbmcgUENBMB4XDTE0MDQyMjE3MzkwMFoXDTE1MDcyMjE3MzkwMFowgYMxCzAJ
# BgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25k # BgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25k
# MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xDTALBgNVBAsTBE1PUFIx # MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xDTALBgNVBAsTBE1PUFIx
# HjAcBgNVBAMTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjCCASIwDQYJKoZIhvcNAQEB # HjAcBgNVBAMTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjCCASIwDQYJKoZIhvcNAQEB
# BQADggEPADCCAQoCggEBAOivXKIgDfgofLwFe3+t7ut2rChTPzrbQH2zjjPmVz+l # BQADggEPADCCAQoCggEBAJZxXe0GRvqEy51bt0bHsOG0ETkDrbEVc2Cc66e2bho8
# URU0VKXPtIupP6g34S1Q7TUWTu9NetsTdoiwLPBZXKnr4dcpdeQbhSeb8/gtnkE2 # P/9l4zTxpqUhXlaZbFjkkqEKXMLT3FIvDGWaIGFAUzGcbI8hfbr5/hNQUmCVOlu5
# KwtA+747urlcdZMWUkvKM8U3sPPrfqj1QRVcCGUdITfwLLoiCxCxEJ13IoWEfE+5 # WKV0YUGplOCtJk5MoZdwSSdefGfKTx5xhEa8HUu24g/FxifJB+Z6CqUXABlMcEU4
# G5Cw9aP+i/QMmk6g9ckKIeKq4wE2R/0vgmqBA/WpNdyUV537S9QOgts4jxL+49Z6 # LYG0UKrFZ9H6ebzFzKFym/QlNJj4VN8SOTgSL6RrpZp+x2LR3M/tPTT4ud81MLrs
# dIhk4WLEJS4qrp0YHw4etsKvJLQOULzeHJNcSaZ5tbbbzvlweygBhLgqKc+/qQUF # eTKp4amsVU1Mf0xWwxMLdvEH+cxHrPuI1VKlHij6PS3Pz4SYhnFlEc+FyQlEhuFv
# 4eAPcU39rVwjgynrx8VKyOgnhNN+xkMLlQAFsU9lccUCAwEAAaOCAWAwggFcMBMG # 57H8rEBEpamLIz+CSZ3VlllQE1kYc/9DDK0r1H8wQGcCAwEAAaOCAWAwggFcMBMG
# A1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBRZcaZaM03amAeA/4Qevof5cjJB # A1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBQfXuJdUI1Whr5KPM8E6KeHtcu/
# 8jBRBgNVHREESjBIpEYwRDENMAsGA1UECxMETU9QUjEzMDEGA1UEBRMqMzE1OTUr # gzBRBgNVHREESjBIpEYwRDENMAsGA1UECxMETU9QUjEzMDEGA1UEBRMqMzE1OTUr
# NGZhZjBiNzEtYWQzNy00YWEzLWE2NzEtNzZiYzA1MjM0NGFkMB8GA1UdIwQYMBaA # YjQyMThmMTMtNmZjYS00OTBmLTljNDctM2ZjNTU3ZGZjNDQwMB8GA1UdIwQYMBaA
# FMsR6MrStBZYAck3LjMWFrlMmgofMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9j # FMsR6MrStBZYAck3LjMWFrlMmgofMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9j
# cmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY0NvZFNpZ1BDQV8w # cmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY0NvZFNpZ1BDQV8w
# OC0zMS0yMDEwLmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6 # OC0zMS0yMDEwLmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6
# Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljQ29kU2lnUENBXzA4LTMx # Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljQ29kU2lnUENBXzA4LTMx
# LTIwMTAuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQAx124qElczgdWdxuv5OtRETQie # LTIwMTAuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQB3XOvXkT3NvXuD2YWpsEOdc3wX
# 7l7falu3ec8CnLx2aJ6QoZwLw3+ijPFNupU5+w3g4Zv0XSQPG42IFTp8263Os8ls # yQ/tNtvHtSwbXvtUBTqDcUCBCaK3cSZe1n22bDvJql9dAxgqHSd+B+nFZR+1zw23
# ujksRX0kEVQmMA0N/0fqAwfl5GZdLHudHakQ+hywdPJPaWueqSSE2u2WoN9zpO9q # VMcoOFqI53vBGbZWMrrizMuT269uD11E9dSw7xvVTsGvDu8gm/Lh/idd6MX/YfYZ
# GqxLYp7xfMAUf0jNTbJE+fA8k21C2Oh85hegm2hoCSj5ApfvEQO6Z1Ktwemzc6bS # 0igKIp3fzXCCnhhy2CPMeixD7v/qwODmHaqelzMAUm8HuNOIbN6kBjWnwlOGZRF3
# Y81K4j7k8079/6HguwITO10g3lU/o66QQDE4dSheBKlGbeb1enlAvR/N6EXVruJd # CY81WbnYhqgA/vgxfSz0jAWdwMHVd3Js6U1ZJoPxwrKIV5M1AHxQK7xZ/P4cKTiC
# PvV1x+ZmY2DM1ZqEh40kMPfvNNBjHbFCZ0oOS786Du+2lTqnOOQlkgimiGaCMIIF # 095Sl0UpGE6WW526Xxuj8SdQ6geV6G00DThX3DcoNZU6OJzU7WqFXQ4iEV57MIIF
# vDCCA6SgAwIBAgIKYTMmGgAAAAAAMTANBgkqhkiG9w0BAQUFADBfMRMwEQYKCZIm # vDCCA6SgAwIBAgIKYTMmGgAAAAAAMTANBgkqhkiG9w0BAQUFADBfMRMwEQYKCZIm
# iZPyLGQBGRYDY29tMRkwFwYKCZImiZPyLGQBGRYJbWljcm9zb2Z0MS0wKwYDVQQD # iZPyLGQBGRYDY29tMRkwFwYKCZImiZPyLGQBGRYJbWljcm9zb2Z0MS0wKwYDVQQD
# EyRNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMTAwODMx # EyRNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMTAwODMx
...@@ -168,31 +125,31 @@ $dte.ItemOperations.Navigate($readmefile) ...@@ -168,31 +125,31 @@ $dte.ItemOperations.Navigate($readmefile)
# K+m79EjMLNTYMoBMJipIJF9a6lbvpt6Znco6b72BJ3QGEe52Ib+bgsEnVLaxaj2J # K+m79EjMLNTYMoBMJipIJF9a6lbvpt6Znco6b72BJ3QGEe52Ib+bgsEnVLaxaj2J
# oXZhtG6hE6a/qkfwEm/9ijJssv7fUciMI8lmvZ0dhxJkAj0tr1mPuOQh5bWwymO0 # oXZhtG6hE6a/qkfwEm/9ijJssv7fUciMI8lmvZ0dhxJkAj0tr1mPuOQh5bWwymO0
# eFQF1EEuUKyUsKV4q7OglnUa2ZKHE3UiLzKoCG6gW4wlv6DvhMoh1useT8ma7kng # eFQF1EEuUKyUsKV4q7OglnUa2ZKHE3UiLzKoCG6gW4wlv6DvhMoh1useT8ma7kng
# 9wFlb4kLfchpyOZu6qeXzjEp/w7FW1zYTRuh2Povnj8uVRZryROj/TGCBL8wggS7 # 9wFlb4kLfchpyOZu6qeXzjEp/w7FW1zYTRuh2Povnj8uVRZryROj/TGCBMgwggTE
# AgEBMIGQMHkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYD # AgEBMIGQMHkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYD
# VQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xIzAh # VQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xIzAh
# BgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBAhMzAAAAsBGvCovQO5/d # BgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBAhMzAAAAymzVMhI1xOFV
# AAEAAACwMAkGBSsOAwIaBQCggdgwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQw # AAEAAADKMAkGBSsOAwIaBQCggeEwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQw
# HAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFDly # HAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFOrT
# uUftHpGO3DfKs6gSuTGftrvFMHgGCisGAQQBgjcCAQwxajBooDSAMgBNAGkAYwBy # ZEbL6mMRie0QxeNrtIXxNuY6MIGABgorBgEEAYI3AgEMMXIwcKBSgFAARQBuAHQA
# AG8AcwBvAGYAdAAuAFMAcQBsAFMAZQByAHYAZQByAC4AVAB5AHAAZQBzoTCALmh0 # aQB0AHkAIABGAHIAYQBtAGUAdwBvAHIAawAgAFQAbwBvAGwAcwAgAGYAbwByACAA
# dHA6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay8/TGlua0lEPTMzMTI3OSAwDQYJ # VgBpAHMAdQBhAGwAIABTAHQAdQBkAGkAb6EagBhodHRwOi8vbXNkbi5jb20vZGF0
# KoZIhvcNAQEBBQAEggEAVx/R4ApQopaJEXOFCv3QyUA0lILcVv+hadxRme62xM18 # YS9lZiAwDQYJKoZIhvcNAQEBBQAEggEAgp8YIEwXo8d1C2hJS1OX9nLxFHxKTtF9
# PurxYnwr5TEQkeA1soJiHOs/88t7Ywt7zQW3KwuRVhEcOzaeID3GabDDvgTrEvVi # n3gnMoqyQ9Cq8nqapIG3LIn8gEzfUgeV3sWhZ4FsZENCqIo/bTWITq7vP5IOT1eb
# HQ0WhfD3Mi5wOTiPNtkos2VR7ObYCfEr/zNWh67/Be0zUVDnuI9/K/2sqkINyRol # eGP0iudpum8ajts8gxWBdqQRf7+qq1TnU6knpCppn2hFwp/5qsGIMCfqaj0sqIg4
# BZuqaI6RBmFWXCXhXaLKQhfCFIRovqL6o8BHF4OCobsY458ogeuh+wj3ASa1ojec # cswc5e443uOMXK6viAjC9ZzeLGH4HZX5eK3DnKsUsqT3dHC/aKhbvITK+pw2f5bP
# 1IMTbfMsGaQSUtTelv1sLlApYHwJrmOPEAMW7vSiada/b7NjutTS+VZskcAHUFSu # rTRjCXMmXoVs5xMcmz0jEMu5d59yFJDGk9b02FqojlvdJ/sYvMPGpAkEmPkOygwW
# oPL10BT+CMUA/Q9Ljlz6DErgtEeSjcT3MGcQ8QnIJ6GCAigwggIkBgkqhkiG9w0B # /kmuemZ6sggDQKPs2trsWGa836uWYTucgQ/f+9Di+FgDc/boMGysr6GCAigwggIk
# CQYxggIVMIICEQIBATCBjjB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGlu # BgkqhkiG9w0BCQYxggIVMIICEQIBATCBjjB3MQswCQYDVQQGEwJVUzETMBEGA1UE
# Z3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv # CBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9z
# cmF0aW9uMSEwHwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0ECEzMAAAAz # b2Z0IENvcnBvcmF0aW9uMSEwHwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQ
# 5SeGow5KKoAAAAAAADMwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJAzELBgkqhkiG # Q0ECEzMAAABiQS/HTYquEyYAAAAAAGIwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJ
# 9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE0MDIxMzE2NDkyMFowIwYJKoZIhvcNAQkE # AzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE1MDMwMjE3Mjk1OFowIwYJ
# MRYEFLbehh6RVINckEW9i9DTBRMirlDwMA0GCSqGSIb3DQEBBQUABIIBAAhAQEVQ # KoZIhvcNAQkEMRYEFKxtHfNR1GPWPqo0yuBPiJ3WZNX2MA0GCSqGSIb3DQEBBQUA
# YtD9yCfN/a9cg6LSffkD9GgNl/uGNbqddDHHnK4PrYIbELjbWp99du53qP8JNClR # BIIBAAwIulYLc715s8FIBZzA3zKD9IKqlhrzpTNBY014mi1pwl2sMpKyA/xAH4Gj
# QjWvtOz2nz87UmI0hFv9e8bWgUzlt+oXKSr1wRGJiCrdrem1w5QhweORoYyfjdVK # eyo4wzSR7PT2BsYEHElYh7tx/eC45rI2mYIFqfsyqbRBxRfWQCb3pb42kix/RUJ+
# bSarJbGoMEHleqphrShAsnerFopD6hrOUSuTpUwNS2TKJwSRCn3hqdslmDAu0J/K # ElTkwy7SG6c04KA8Yi/Z3uOxxlBCWfXWupHQMpIsdVI1s/v65Tn3TNyBLtPu507q
# fyOn+X25hFDnko9qfYKZ/ZNt+5C6YcYzA2nRdCaAyD0oRVCQuxk8+a6i1mYnw0cN # CNcYfok3IIhcvQCd7vCUK2fnJsuLxbFFqqKoMft10iqAROREkXEhfcyLOUt4BrMh
# V+GLzKCfIWv/53t23FRhMdz0Dl2bJC839EbIFixgBOTRiHKE0m3CW5k7dG3HUjwJ # KN2ygSFPCIbFAGvmS84oq8p4FzJAFUL9rE8qzxzXrbEA4UglDj72mW6nXmXaHiOZ
# mYhA2N6vQskSjjw= # J+2fE3M9xcMV3gKEuSL/DiQhPaI=
# SIG # End signature block # SIG # End signature block
param($installPath, $toolsPath, $package, $project) param($installPath, $toolsPath, $package, $project)
$sqlServerTypes = $project.ProjectItems | where Name -eq "SqlServerTypes" Initialize-EFConfiguration $project
if($sqlServerTypes) Add-EFProvider $project 'System.Data.SqlClient' 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer'
{
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if ($folderx86)
{
$cppFilex86 = $folderx86.ProjectItems | where Name -eq "msvcr100.dll"
if($cppFilex86)
{
$cppFilex86.Delete();
}
$sqlFilex86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial110.dll" Write-Host
if($sqlFilex86) Write-Host "Type 'get-help EntityFramework' to see all available Entity Framework commands."
{
$sqlFilex86.Delete();
}
if($folderx86.ProjectItems.Count -eq 0)
{
$folderx86.Delete()
}
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if ($folderx64)
{
$cppFilex64 = $folderx64.ProjectItems | where Name -eq "msvcr100.dll"
if($cppFilex64)
{
$cppFilex64.Delete();
}
$sqlFilex64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if($sqlFilex64)
{
$sqlFilex64.Delete();
}
if($folderx64.ProjectItems.Count -eq 0)
{
$folderx64.Delete()
}
}
if($sqlServerTypes.ProjectItems.Count -eq 0)
{
$sqlServerTypes.Delete()
}
}
# SIG # Begin signature block # SIG # Begin signature block
# MIIa1wYJKoZIhvcNAQcCoIIayDCCGsQCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB # MIIa4AYJKoZIhvcNAQcCoIIa0TCCGs0CAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR # gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUOTnxBv+kQ7DmiKnzn9KzGAlx # AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUt8mwpdjiFmu2B4KBh+vEeQ+V
# xkCgghWCMIIEwzCCA6ugAwIBAgITMwAAADQkMUDJoMF5jQAAAAAANDANBgkqhkiG # VnSgghWCMIIEwzCCA6ugAwIBAgITMwAAAGJBL8dNiq4TJgAAAAAAYjANBgkqhkiG
# 9w0BAQUFADB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G # 9w0BAQUFADB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G
# A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEw # A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEw
# HwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwHhcNMTMwMzI3MjAwODI1 # HwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwHhcNMTUwMjEwMTgzMzM3
# WhcNMTQwNjI3MjAwODI1WjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp # WhcNMTYwNTEwMTgzMzM3WjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp
# bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw # bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw
# b3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNO # b3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNO
# OkI4RUMtMzBBNC03MTQ0MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBT # OkMwRjQtMzA4Ni1ERUY4MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBT
# ZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5RoHrQqWLNS2 # ZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzpcpEnjOg16e
# NGTLNCDyvARYgou1CdxS1HCf4lws5/VqpPW2LrGBhlkB7ElsKQQe9TiLVxj1wDIN # fCoOjWmTxe4NOad07kj+GNlAGb0eel7cppX64uGPcUvvOPSAmxheqTjM2PBEtHGN
# 7TSQ7MZF5buKCiWq76F7h9jxcGdKzWrc5q8FkT3tBXDrQc+rsSVmu6uitxj5eBN4 # qjqD6M7STHM5hsVJ0dWsK+5KEY8IbIYHIxJJrNyF5rDLJ3lKlKFVo1mgn/oZM4cM
# dc2LM1x97WfE7QP9KKxYYMF7vYCNM5NhYgixj1ESZY9BfsTVJektZkHTQzT6l4H4 # CgfokLOayjIvyxuJIFrFbpO+nF+PhuI3MYT+lsHKdg2ErCNF0Y3KNvmDtP9XBiRK
# /Ieh7TlSH/jpPv9egMkGNgfb27lqxzfPhrUaS0rUJfLHyI2vYWeK2lMv80wegyxj # iGS7pVlKB4oaueB+94csweq7LXrUTrOcP8a6hRKzNqjR4pAcybwv508B4otK+jbX
# yqAQUhG6gVhzQoTjNLLu6pO+TILQfZYLT38vzxBdGkVmqwLxXyQARsHBVdKDckIi # lmE2ldsEysu9mwjN1fyDVSnWheoGZiXw3pxG9FeeXsOkNLibTtUVrjkcohq6hvb7
# hjqkvpNQAQIDAQABo4IBCTCCAQUwHQYDVR0OBBYEFF9LQt4MuTig1GY2jVb7dFlJ # 7q4dco7enQIDAQABo4IBCTCCAQUwHQYDVR0OBBYEFJsuiFXbFF3ayMLtg9j5aH6D
# ZoErMB8GA1UdIwQYMBaAFCM0+NlSRnAK7UD7dvuzK7DDNbMPMFQGA1UdHwRNMEsw # oTnHMB8GA1UdIwQYMBaAFCM0+NlSRnAK7UD7dvuzK7DDNbMPMFQGA1UdHwRNMEsw
# SaBHoEWGQ2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3Rz # SaBHoEWGQ2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3Rz
# L01pY3Jvc29mdFRpbWVTdGFtcFBDQS5jcmwwWAYIKwYBBQUHAQEETDBKMEgGCCsG # L01pY3Jvc29mdFRpbWVTdGFtcFBDQS5jcmwwWAYIKwYBBQUHAQEETDBKMEgGCCsG
# AQUFBzAChjxodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY3Jv # AQUFBzAChjxodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY3Jv
# c29mdFRpbWVTdGFtcFBDQS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZI # c29mdFRpbWVTdGFtcFBDQS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZI
# hvcNAQEFBQADggEBAA9CUKDVHq0XPx8Kpis3imdYLbEwTzvvwldp7GXTTMVQcvJz # hvcNAQEFBQADggEBAAytzvTw859N7K64VMzmnhXGV4ZOeMnn/AJgqOUGsIrVqmth
# JfbkhALFdRxxWEOr8cmqjt/Kb1g8iecvzXo17GbX1V66jp9XhpQQoOtRN61X9id7 # oqscqKq9fSnj3QlC3kyXFID7S69GmvDfylA/mu6HSe0mytg8svbYu7p6arQWe8q1
# I08Z2OBtdgQlMGESraWOoya2SOVT8kVOxbiJJxCdqePPI+l5bK6TaDoa8xPEFLZ6 # 2kdagS1kFPBqUySyEx5pdI0r+9WejW98lNiY4PNgoqdvFZaU4fp1tsbJ8f6rJZ7U
# Op5B2plWntDT4BaWkHJMrwH3JAb7GSuYslXMep/okjprMXuA8w6eV4u35gW2OSWa # tVCLOYHbDvlhU0LjKpbCgZ0VlR4Kk1SUuclxtIVETpHS5ToC1EzQRIGLsvkOxg7p
# l4IpNos4rq6LGqzu5+wuv0supQc1gfMTIOq0SpOev5yDVn+tFS9cKXELlGc4/DC/ # Kf/MkuGM4R4dYIVZpPQYLeTb0o0hdnXXez1za9a9zaa/imKXyiV53z1loGFVVYqH
# Zef1Od7qIu2HjKuyO7UBwq3g/I4lFQwivp8M7R0wggTsMIID1KADAgECAhMzAAAA # AnYnCMw5M16oWdKeG7OaT+qFQL5aK0SaoZSHpuswggTsMIID1KADAgECAhMzAAAA
# sBGvCovQO5/dAAEAAACwMA0GCSqGSIb3DQEBBQUAMHkxCzAJBgNVBAYTAlVTMRMw # ymzVMhI1xOFVAAEAAADKMA0GCSqGSIb3DQEBBQUAMHkxCzAJBgNVBAYTAlVTMRMw
# EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN # EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN
# aWNyb3NvZnQgQ29ycG9yYXRpb24xIzAhBgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNp # aWNyb3NvZnQgQ29ycG9yYXRpb24xIzAhBgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNp
# Z25pbmcgUENBMB4XDTEzMDEyNDIyMzMzOVoXDTE0MDQyNDIyMzMzOVowgYMxCzAJ # Z25pbmcgUENBMB4XDTE0MDQyMjE3MzkwMFoXDTE1MDcyMjE3MzkwMFowgYMxCzAJ
# BgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25k # BgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25k
# MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xDTALBgNVBAsTBE1PUFIx # MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xDTALBgNVBAsTBE1PUFIx
# HjAcBgNVBAMTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjCCASIwDQYJKoZIhvcNAQEB # HjAcBgNVBAMTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjCCASIwDQYJKoZIhvcNAQEB
# BQADggEPADCCAQoCggEBAOivXKIgDfgofLwFe3+t7ut2rChTPzrbQH2zjjPmVz+l # BQADggEPADCCAQoCggEBAJZxXe0GRvqEy51bt0bHsOG0ETkDrbEVc2Cc66e2bho8
# URU0VKXPtIupP6g34S1Q7TUWTu9NetsTdoiwLPBZXKnr4dcpdeQbhSeb8/gtnkE2 # P/9l4zTxpqUhXlaZbFjkkqEKXMLT3FIvDGWaIGFAUzGcbI8hfbr5/hNQUmCVOlu5
# KwtA+747urlcdZMWUkvKM8U3sPPrfqj1QRVcCGUdITfwLLoiCxCxEJ13IoWEfE+5 # WKV0YUGplOCtJk5MoZdwSSdefGfKTx5xhEa8HUu24g/FxifJB+Z6CqUXABlMcEU4
# G5Cw9aP+i/QMmk6g9ckKIeKq4wE2R/0vgmqBA/WpNdyUV537S9QOgts4jxL+49Z6 # LYG0UKrFZ9H6ebzFzKFym/QlNJj4VN8SOTgSL6RrpZp+x2LR3M/tPTT4ud81MLrs
# dIhk4WLEJS4qrp0YHw4etsKvJLQOULzeHJNcSaZ5tbbbzvlweygBhLgqKc+/qQUF # eTKp4amsVU1Mf0xWwxMLdvEH+cxHrPuI1VKlHij6PS3Pz4SYhnFlEc+FyQlEhuFv
# 4eAPcU39rVwjgynrx8VKyOgnhNN+xkMLlQAFsU9lccUCAwEAAaOCAWAwggFcMBMG # 57H8rEBEpamLIz+CSZ3VlllQE1kYc/9DDK0r1H8wQGcCAwEAAaOCAWAwggFcMBMG
# A1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBRZcaZaM03amAeA/4Qevof5cjJB # A1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBQfXuJdUI1Whr5KPM8E6KeHtcu/
# 8jBRBgNVHREESjBIpEYwRDENMAsGA1UECxMETU9QUjEzMDEGA1UEBRMqMzE1OTUr # gzBRBgNVHREESjBIpEYwRDENMAsGA1UECxMETU9QUjEzMDEGA1UEBRMqMzE1OTUr
# NGZhZjBiNzEtYWQzNy00YWEzLWE2NzEtNzZiYzA1MjM0NGFkMB8GA1UdIwQYMBaA # YjQyMThmMTMtNmZjYS00OTBmLTljNDctM2ZjNTU3ZGZjNDQwMB8GA1UdIwQYMBaA
# FMsR6MrStBZYAck3LjMWFrlMmgofMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9j # FMsR6MrStBZYAck3LjMWFrlMmgofMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9j
# cmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY0NvZFNpZ1BDQV8w # cmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY0NvZFNpZ1BDQV8w
# OC0zMS0yMDEwLmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6 # OC0zMS0yMDEwLmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6
# Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljQ29kU2lnUENBXzA4LTMx # Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljQ29kU2lnUENBXzA4LTMx
# LTIwMTAuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQAx124qElczgdWdxuv5OtRETQie # LTIwMTAuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQB3XOvXkT3NvXuD2YWpsEOdc3wX
# 7l7falu3ec8CnLx2aJ6QoZwLw3+ijPFNupU5+w3g4Zv0XSQPG42IFTp8263Os8ls # yQ/tNtvHtSwbXvtUBTqDcUCBCaK3cSZe1n22bDvJql9dAxgqHSd+B+nFZR+1zw23
# ujksRX0kEVQmMA0N/0fqAwfl5GZdLHudHakQ+hywdPJPaWueqSSE2u2WoN9zpO9q # VMcoOFqI53vBGbZWMrrizMuT269uD11E9dSw7xvVTsGvDu8gm/Lh/idd6MX/YfYZ
# GqxLYp7xfMAUf0jNTbJE+fA8k21C2Oh85hegm2hoCSj5ApfvEQO6Z1Ktwemzc6bS # 0igKIp3fzXCCnhhy2CPMeixD7v/qwODmHaqelzMAUm8HuNOIbN6kBjWnwlOGZRF3
# Y81K4j7k8079/6HguwITO10g3lU/o66QQDE4dSheBKlGbeb1enlAvR/N6EXVruJd # CY81WbnYhqgA/vgxfSz0jAWdwMHVd3Js6U1ZJoPxwrKIV5M1AHxQK7xZ/P4cKTiC
# PvV1x+ZmY2DM1ZqEh40kMPfvNNBjHbFCZ0oOS786Du+2lTqnOOQlkgimiGaCMIIF # 095Sl0UpGE6WW526Xxuj8SdQ6geV6G00DThX3DcoNZU6OJzU7WqFXQ4iEV57MIIF
# vDCCA6SgAwIBAgIKYTMmGgAAAAAAMTANBgkqhkiG9w0BAQUFADBfMRMwEQYKCZIm # vDCCA6SgAwIBAgIKYTMmGgAAAAAAMTANBgkqhkiG9w0BAQUFADBfMRMwEQYKCZIm
# iZPyLGQBGRYDY29tMRkwFwYKCZImiZPyLGQBGRYJbWljcm9zb2Z0MS0wKwYDVQQD # iZPyLGQBGRYDY29tMRkwFwYKCZImiZPyLGQBGRYJbWljcm9zb2Z0MS0wKwYDVQQD
# EyRNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMTAwODMx # EyRNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMTAwODMx
...@@ -168,31 +124,31 @@ if($sqlServerTypes) ...@@ -168,31 +124,31 @@ if($sqlServerTypes)
# K+m79EjMLNTYMoBMJipIJF9a6lbvpt6Znco6b72BJ3QGEe52Ib+bgsEnVLaxaj2J # K+m79EjMLNTYMoBMJipIJF9a6lbvpt6Znco6b72BJ3QGEe52Ib+bgsEnVLaxaj2J
# oXZhtG6hE6a/qkfwEm/9ijJssv7fUciMI8lmvZ0dhxJkAj0tr1mPuOQh5bWwymO0 # oXZhtG6hE6a/qkfwEm/9ijJssv7fUciMI8lmvZ0dhxJkAj0tr1mPuOQh5bWwymO0
# eFQF1EEuUKyUsKV4q7OglnUa2ZKHE3UiLzKoCG6gW4wlv6DvhMoh1useT8ma7kng # eFQF1EEuUKyUsKV4q7OglnUa2ZKHE3UiLzKoCG6gW4wlv6DvhMoh1useT8ma7kng
# 9wFlb4kLfchpyOZu6qeXzjEp/w7FW1zYTRuh2Povnj8uVRZryROj/TGCBL8wggS7 # 9wFlb4kLfchpyOZu6qeXzjEp/w7FW1zYTRuh2Povnj8uVRZryROj/TGCBMgwggTE
# AgEBMIGQMHkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYD # AgEBMIGQMHkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYD
# VQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xIzAh # VQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xIzAh
# BgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBAhMzAAAAsBGvCovQO5/d # BgNVBAMTGk1pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBAhMzAAAAymzVMhI1xOFV
# AAEAAACwMAkGBSsOAwIaBQCggdgwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQw # AAEAAADKMAkGBSsOAwIaBQCggeEwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQw
# HAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFNiS # HAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFJiz
# 9dClAQRrI0xaTw9JT/29H5j7MHgGCisGAQQBgjcCAQwxajBooDSAMgBNAGkAYwBy # f4JawBv4s6ihwSKoeZTRDcAvMIGABgorBgEEAYI3AgEMMXIwcKBSgFAARQBuAHQA
# AG8AcwBvAGYAdAAuAFMAcQBsAFMAZQByAHYAZQByAC4AVAB5AHAAZQBzoTCALmh0 # aQB0AHkAIABGAHIAYQBtAGUAdwBvAHIAawAgAFQAbwBvAGwAcwAgAGYAbwByACAA
# dHA6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay8/TGlua0lEPTMzMTI3OSAwDQYJ # VgBpAHMAdQBhAGwAIABTAHQAdQBkAGkAb6EagBhodHRwOi8vbXNkbi5jb20vZGF0
# KoZIhvcNAQEBBQAEggEANagvEBKkwtDmVx3vr8aZrB+5gqMhfIOuNNoC0Yb/KLHe # YS9lZiAwDQYJKoZIhvcNAQEBBQAEggEAFy52TLBcmieavvWab1nArTK05hXGrx+n
# xA8N7/dqs7Xq2e3BrTNkGh6SbpPc0w11SxkkKmLnLAVTLEWUOrr1bXk+/Kenx5CV # qn/Aq3b4WpCD3Kotg6ZcmMDgFoBR3CCxOi8DzXowNjnX4aGMnUgGR8oczgU0DVRN
# U1EFJ69gBcgTbyHPHygnRDTJBET+DMGLt8ja25z4wVs2XoZ3sPVoT7shBUcGN+fZ # 6e9fIaYthchMgS/bDZEyPZ39H2mSuNPkM4rBiB5K0CkQQgjwEKYCRImwSlnBu0jY
# scE5K+kHuvwUrCyDsnHL2jMlGIK3hTklMvBuqSTzkoh3YD6T7yB+rZJT5kjlObKH # nH1J/jF0RnYFZ1uxmY8jpWA/km5kj3fSTwC8CPn24I6H520Cka0CiBGl6iNLRAK+
# e/FJYExls4WC/0wD4cBjDy5mELIlNfd7VtrWrHJu+V+3mdUbO1VZIn32P/fWYV6U # rOokn9Ymw9dbttXINl8WpNCBIR6XBAgBhlyJa6JmTceoXZvIGu1h8KVCWwDv+lKT
# 2Y1DQA9F9J2q49HDtKQ0MN4rWPLpqaXHuQpWE/qThaGCAigwggIkBgkqhkiG9w0B # uRLEKWdVQ5cgNth3csHOUQnBC5FN6TxY9dqozIwcjNUwwOOsqrEW5KGCAigwggIk
# CQYxggIVMIICEQIBATCBjjB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGlu # BgkqhkiG9w0BCQYxggIVMIICEQIBATCBjjB3MQswCQYDVQQGEwJVUzETMBEGA1UE
# Z3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv # CBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9z
# cmF0aW9uMSEwHwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0ECEzMAAAA0 # b2Z0IENvcnBvcmF0aW9uMSEwHwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQ
# JDFAyaDBeY0AAAAAADQwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJAzELBgkqhkiG # Q0ECEzMAAABiQS/HTYquEyYAAAAAAGIwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJ
# 9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE0MDIxMzE2NDkyMFowIwYJKoZIhvcNAQkE # AzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE1MDMwMjE3Mjk1OFowIwYJ
# MRYEFPdzxJe3BVqxhxsexv9sPbvVPYMLMA0GCSqGSIb3DQEBBQUABIIBADMSSNla # KoZIhvcNAQkEMRYEFAMe6WzqHaLPBigGoS/gaG25ANUpMA0GCSqGSIb3DQEBBQUA
# 5ysOri40+bsdF/HWu9D85jFt+rN7F0MFjtjFThZZ+paVOWRt8VeX3lDLyFLPpq5F # BIIBAGFxF739EOC9CNxIDxocqE2PugMRxvX1rrmsvfwnrhaZmL9XqeWgsS8SqJq3
# gW1Wrt9mhVEvBdDoF+I0ss5wpV8ClFFHcCcNbPanrp89SgBblpoZiDKP9yHSwRyM # GOASzoTwvkyAE9qavr0o34a84HDSVbapNEribsu6ILaZpd0ucFGbk4L3QcSODtvH
# qL7QAvt3gvMlKz7CBlCi55U25l2K9qs5/a9JchNQWsMc1mC+mJ2VFHqtfSq+j9Br # XZuCh0cl3ohJT8ShQBNmN9TkqlhnP9AYWcoNaefJkozg7xc3m/CsGkcbSHNk0Bvm
# G9gU8Roxu1fuf9vr8dkY7u8ZYQGuMNUaiwYYCiNeRZEycqBQqEH7egd8dCWXIkU+ # IF1zG1axnKwNFXopJLnbqxqajBcH3VaCTo9cEshs9qaUy2NZ4RZJztYnnBQsGvv8
# cMXcMfypwtg6Jc2JDKnzbMBi+ZsgbY0OkhuflZDNDR7sL+eqv200tk7NtybXubwI # go2qsBgLcALFpVHrSX6yKuH8XVwR+lHofY7nZHs0TLi55SFbpJK+53BCWeH4OK85
# /gbw2Bp1lxt+mMk= # wQ6quf2TAX7dc3ct2zrY3TWhf7Q=
# SIG # End signature block # SIG # End signature block
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.data>
<DbProviderFactories>
<remove invariant="FirebirdSql.Data.FirebirdClient" />
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient" />
</DbProviderFactories>
</system.data>
</configuration>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.data>
<DbProviderFactories>
<remove invariant="FirebirdSql.Data.FirebirdClient" />
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient" />
</DbProviderFactories>
</system.data>
</configuration>
\ No newline at end of file
...@@ -16,9 +16,9 @@ You can subscribe to the developement list at: ...@@ -16,9 +16,9 @@ You can subscribe to the developement list at:
http://lists.sourceforge.net/lists/listinfo/firebird-net-provider http://lists.sourceforge.net/lists/listinfo/firebird-net-provider
You can access to the lastest developement sources through SVN, see: You can access to the lastest developement sources through Git, see:
https://sourceforge.net/p/firebird/NETProvider/ https://sourceforge.net/p/firebird/NETProvider/ci/master/tree/
Reporting Bugs Reporting Bugs
......
param($installPath, $toolsPath, $package, $project)
$packagePath = (New-Object system.IO.DirectoryInfo $toolsPath).Parent.FullName
$cppBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\msvcr100.dll"
$cppBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\msvcr100.dll"
$sqlBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\SqlServerSpatial110.dll"
$sqlBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\SqlServerSpatial110.dll"
$sqlServerTypes = $project.ProjectItems.Item("SqlServerTypes")
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if (!$folderx86)
{
$folderx86 = $sqlServerTypes.ProjectItems.AddFolder("x86")
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if (!$folderx64)
{
$folderx64 = $sqlServerTypes.ProjectItems.AddFolder("x64")
}
$cppLinkx86 = $folderx86.ProjectItems | where Name -eq "msvcr100.dll"
if (!$cppLinkx86)
{
$cppLinkx86 = $folderx86.ProjectItems.AddFromFile($cppBinaryPathx86)
$cppLinkx86.Properties.Item("CopyToOutputDirectory").Value = 2
}
$sqlLinkx86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if (!$sqlLinkx86)
{
$sqlLinkx86 = $folderx86.ProjectItems.AddFromFile($sqlBinaryPathx86)
$sqlLinkx86.Properties.Item("CopyToOutputDirectory").Value = 2
}
$cppLinkx64 = $folderx64.ProjectItems | where Name -eq "msvcr100.dll"
if (!$cppLinkx64)
{
$cppLinkx64 = $folderx64.ProjectItems.AddFromFile($cppBinaryPathx64)
$cppLinkx64.Properties.Item("CopyToOutputDirectory").Value = 2
}
$sqlLinkx64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if (!$sqlLinkx64)
{
$sqlLinkx64 = $folderx64.ProjectItems.AddFromFile($sqlBinaryPathx64)
$sqlLinkx64.Properties.Item("CopyToOutputDirectory").Value = 2
}
$readmefile = Join-Path (Split-Path $project.FileName) "SqlServerTypes\readme.htm"
$dte.ItemOperations.Navigate($readmefile)
\ No newline at end of file
param($installPath, $toolsPath, $package, $project)
$sqlServerTypes = $project.ProjectItems | where Name -eq "SqlServerTypes"
if($sqlServerTypes)
{
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if ($folderx86)
{
$cppFilex86 = $folderx86.ProjectItems | where Name -eq "msvcr100.dll"
if($cppFilex86)
{
$cppFilex86.Delete();
}
$sqlFilex86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if($sqlFilex86)
{
$sqlFilex86.Delete();
}
if($folderx86.ProjectItems.Count -eq 0)
{
$folderx86.Delete()
}
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if ($folderx64)
{
$cppFilex64 = $folderx64.ProjectItems | where Name -eq "msvcr100.dll"
if($cppFilex64)
{
$cppFilex64.Delete();
}
$sqlFilex64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if($sqlFilex64)
{
$sqlFilex64.Delete();
}
if($folderx64.ProjectItems.Count -eq 0)
{
$folderx64.Delete()
}
}
if($sqlServerTypes.ProjectItems.Count -eq 0)
{
$sqlServerTypes.Delete()
}
}
\ No newline at end of file
...@@ -2595,6 +2595,13 @@ ...@@ -2595,6 +2595,13 @@
against a PostgreSQL database. This class cannot be inherited. against a PostgreSQL database. This class cannot be inherited.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlCommand._prepareConnectionOpenId">
<summary>
For prepared commands, captures the connection's <see cref="P:Npgsql.NpgsqlConnection.OpenCounter"/>
at the time the command was prepared. This allows us to know whether the connection was
closed since the command was prepared.
</summary>
</member>
<member name="M:Npgsql.NpgsqlCommand.#ctor"> <member name="M:Npgsql.NpgsqlCommand.#ctor">
<summary> <summary>
Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class. Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class.
...@@ -2834,6 +2841,11 @@ ...@@ -2834,6 +2841,11 @@
Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0. Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlCommand.IsPrepared">
<summary>
Returns whether this query will execute as a prepared (compiled) query.
</summary>
</member>
<member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible"> <member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible">
<summary> <summary>
Design time visible. Design time visible.
...@@ -3288,6 +3300,13 @@ ...@@ -3288,6 +3300,13 @@
Called to validate server's certificate during SSL handshake Called to validate server's certificate during SSL handshake
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.OpenCounter">
<summary>
A counter that gets incremented every time the connection is (re-)opened.
This allows us to identify an "instance" of connection, which is useful since
some resources are released when a connection is closed (e.g. prepared statements).
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ConnectionString"> <member name="P:Npgsql.NpgsqlConnection.ConnectionString">
<summary> <summary>
Gets or sets the string used to connect to a PostgreSQL database. Gets or sets the string used to connect to a PostgreSQL database.
...@@ -3448,6 +3467,11 @@ ...@@ -3448,6 +3467,11 @@
Always retuna Version3 Always retuna Version3
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ProcessID"> <member name="P:Npgsql.NpgsqlConnection.ProcessID">
<summary> <summary>
Process id of backend server. Process id of backend server.
...@@ -3711,6 +3735,11 @@ ...@@ -3711,6 +3735,11 @@
the application developer from connection pooling internals. the application developer from connection pooling internals.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlConnector._isRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)"> <member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)">
<summary> <summary>
Constructor. Constructor.
...@@ -3844,6 +3873,11 @@ ...@@ -3844,6 +3873,11 @@
Version of backend server this connector is connected to. Version of backend server this connector is connected to.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnector.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnector.Socket"> <member name="P:Npgsql.NpgsqlConnector.Socket">
<summary> <summary>
The physical connection socket to the backend. The physical connection socket to the backend.
......
...@@ -2595,6 +2595,13 @@ ...@@ -2595,6 +2595,13 @@
against a PostgreSQL database. This class cannot be inherited. against a PostgreSQL database. This class cannot be inherited.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlCommand._prepareConnectionOpenId">
<summary>
For prepared commands, captures the connection's <see cref="P:Npgsql.NpgsqlConnection.OpenCounter"/>
at the time the command was prepared. This allows us to know whether the connection was
closed since the command was prepared.
</summary>
</member>
<member name="M:Npgsql.NpgsqlCommand.#ctor"> <member name="M:Npgsql.NpgsqlCommand.#ctor">
<summary> <summary>
Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class. Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class.
...@@ -2834,6 +2841,11 @@ ...@@ -2834,6 +2841,11 @@
Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0. Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlCommand.IsPrepared">
<summary>
Returns whether this query will execute as a prepared (compiled) query.
</summary>
</member>
<member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible"> <member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible">
<summary> <summary>
Design time visible. Design time visible.
...@@ -3288,6 +3300,13 @@ ...@@ -3288,6 +3300,13 @@
Called to validate server's certificate during SSL handshake Called to validate server's certificate during SSL handshake
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.OpenCounter">
<summary>
A counter that gets incremented every time the connection is (re-)opened.
This allows us to identify an "instance" of connection, which is useful since
some resources are released when a connection is closed (e.g. prepared statements).
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ConnectionString"> <member name="P:Npgsql.NpgsqlConnection.ConnectionString">
<summary> <summary>
Gets or sets the string used to connect to a PostgreSQL database. Gets or sets the string used to connect to a PostgreSQL database.
...@@ -3448,6 +3467,11 @@ ...@@ -3448,6 +3467,11 @@
Always retuna Version3 Always retuna Version3
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ProcessID"> <member name="P:Npgsql.NpgsqlConnection.ProcessID">
<summary> <summary>
Process id of backend server. Process id of backend server.
...@@ -3716,6 +3740,11 @@ ...@@ -3716,6 +3740,11 @@
the application developer from connection pooling internals. the application developer from connection pooling internals.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlConnector._isRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)"> <member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)">
<summary> <summary>
Constructor. Constructor.
...@@ -3849,6 +3878,11 @@ ...@@ -3849,6 +3878,11 @@
Version of backend server this connector is connected to. Version of backend server this connector is connected to.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnector.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnector.Socket"> <member name="P:Npgsql.NpgsqlConnector.Socket">
<summary> <summary>
The physical connection socket to the backend. The physical connection socket to the backend.
......
...@@ -2595,6 +2595,13 @@ ...@@ -2595,6 +2595,13 @@
against a PostgreSQL database. This class cannot be inherited. against a PostgreSQL database. This class cannot be inherited.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlCommand._prepareConnectionOpenId">
<summary>
For prepared commands, captures the connection's <see cref="P:Npgsql.NpgsqlConnection.OpenCounter"/>
at the time the command was prepared. This allows us to know whether the connection was
closed since the command was prepared.
</summary>
</member>
<member name="M:Npgsql.NpgsqlCommand.#ctor"> <member name="M:Npgsql.NpgsqlCommand.#ctor">
<summary> <summary>
Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class. Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class.
...@@ -2834,6 +2841,11 @@ ...@@ -2834,6 +2841,11 @@
Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0. Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlCommand.IsPrepared">
<summary>
Returns whether this query will execute as a prepared (compiled) query.
</summary>
</member>
<member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible"> <member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible">
<summary> <summary>
Design time visible. Design time visible.
...@@ -3288,6 +3300,13 @@ ...@@ -3288,6 +3300,13 @@
Called to validate server's certificate during SSL handshake Called to validate server's certificate during SSL handshake
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.OpenCounter">
<summary>
A counter that gets incremented every time the connection is (re-)opened.
This allows us to identify an "instance" of connection, which is useful since
some resources are released when a connection is closed (e.g. prepared statements).
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ConnectionString"> <member name="P:Npgsql.NpgsqlConnection.ConnectionString">
<summary> <summary>
Gets or sets the string used to connect to a PostgreSQL database. Gets or sets the string used to connect to a PostgreSQL database.
...@@ -3448,6 +3467,11 @@ ...@@ -3448,6 +3467,11 @@
Always retuna Version3 Always retuna Version3
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ProcessID"> <member name="P:Npgsql.NpgsqlConnection.ProcessID">
<summary> <summary>
Process id of backend server. Process id of backend server.
...@@ -3716,6 +3740,11 @@ ...@@ -3716,6 +3740,11 @@
the application developer from connection pooling internals. the application developer from connection pooling internals.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlConnector._isRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)"> <member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)">
<summary> <summary>
Constructor. Constructor.
...@@ -3849,6 +3878,11 @@ ...@@ -3849,6 +3878,11 @@
Version of backend server this connector is connected to. Version of backend server this connector is connected to.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnector.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnector.Socket"> <member name="P:Npgsql.NpgsqlConnector.Socket">
<summary> <summary>
The physical connection socket to the backend. The physical connection socket to the backend.
......
...@@ -2595,6 +2595,13 @@ ...@@ -2595,6 +2595,13 @@
against a PostgreSQL database. This class cannot be inherited. against a PostgreSQL database. This class cannot be inherited.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlCommand._prepareConnectionOpenId">
<summary>
For prepared commands, captures the connection's <see cref="P:Npgsql.NpgsqlConnection.OpenCounter"/>
at the time the command was prepared. This allows us to know whether the connection was
closed since the command was prepared.
</summary>
</member>
<member name="M:Npgsql.NpgsqlCommand.#ctor"> <member name="M:Npgsql.NpgsqlCommand.#ctor">
<summary> <summary>
Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class. Initializes a new instance of the <see cref="T:Npgsql.NpgsqlCommand">NpgsqlCommand</see> class.
...@@ -2834,6 +2841,11 @@ ...@@ -2834,6 +2841,11 @@
Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0. Returns oid of inserted row. This is only updated when using executenonQuery and when command inserts just a single row. If table is created without oids, this will always be 0.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlCommand.IsPrepared">
<summary>
Returns whether this query will execute as a prepared (compiled) query.
</summary>
</member>
<member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible"> <member name="P:Npgsql.NpgsqlCommand.DesignTimeVisible">
<summary> <summary>
Design time visible. Design time visible.
...@@ -3288,6 +3300,13 @@ ...@@ -3288,6 +3300,13 @@
Called to validate server's certificate during SSL handshake Called to validate server's certificate during SSL handshake
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.OpenCounter">
<summary>
A counter that gets incremented every time the connection is (re-)opened.
This allows us to identify an "instance" of connection, which is useful since
some resources are released when a connection is closed (e.g. prepared statements).
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ConnectionString"> <member name="P:Npgsql.NpgsqlConnection.ConnectionString">
<summary> <summary>
Gets or sets the string used to connect to a PostgreSQL database. Gets or sets the string used to connect to a PostgreSQL database.
...@@ -3448,6 +3467,11 @@ ...@@ -3448,6 +3467,11 @@
Always retuna Version3 Always retuna Version3
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnection.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnection.ProcessID"> <member name="P:Npgsql.NpgsqlConnection.ProcessID">
<summary> <summary>
Process id of backend server. Process id of backend server.
...@@ -3716,6 +3740,11 @@ ...@@ -3716,6 +3740,11 @@
the application developer from connection pooling internals. the application developer from connection pooling internals.
</summary> </summary>
</member> </member>
<member name="F:Npgsql.NpgsqlConnector._isRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)"> <member name="M:Npgsql.NpgsqlConnector.#ctor(Npgsql.NpgsqlConnectionStringBuilder,System.Boolean,System.Boolean)">
<summary> <summary>
Constructor. Constructor.
...@@ -3849,6 +3878,11 @@ ...@@ -3849,6 +3878,11 @@
Version of backend server this connector is connected to. Version of backend server this connector is connected to.
</summary> </summary>
</member> </member>
<member name="P:Npgsql.NpgsqlConnector.IsRedshift">
<summary>
Whether the backend is an AWS Redshift instance
</summary>
</member>
<member name="P:Npgsql.NpgsqlConnector.Socket"> <member name="P:Npgsql.NpgsqlConnector.Socket">
<summary> <summary>
The physical connection socket to the backend. The physical connection socket to the backend.
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment