diff --git a/NuGet/CopyMe.Access.tt.txt b/NuGet/CopyMe.Access.tt.txt
index 8c57faf..6833b95 100644
--- a/NuGet/CopyMe.Access.tt.txt
+++ b/NuGet/CopyMe.Access.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Access.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Access.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.DB2.tt.txt b/NuGet/CopyMe.DB2.tt.txt
index f52a1b5..072b2cb 100644
--- a/NuGet/CopyMe.DB2.tt.txt
+++ b/NuGet/CopyMe.DB2.tt.txt
@@ -1,7 +1,7 @@
-<#@ template language="C#" debug="True" hostSpecific="True" #>
-<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.DB2.ttinclude" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
+<#@ template language="C#" debug="True" hostSpecific="True" #>
+<#@ output extension=".generated.cs" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.DB2.Tools.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
1. Download and install IBM Data Server Provider for .NET.
diff --git a/NuGet/CopyMe.Firebird.tt.txt b/NuGet/CopyMe.Firebird.tt.txt
index 1d3b459..74eb3ff 100644
--- a/NuGet/CopyMe.Firebird.tt.txt
+++ b/NuGet/CopyMe.Firebird.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Firebird.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Firebird.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.Informix.tt.txt b/NuGet/CopyMe.Informix.tt.txt
index 80147fb..432b688 100644
--- a/NuGet/CopyMe.Informix.tt.txt
+++ b/NuGet/CopyMe.Informix.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Informix.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Informix.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.MySql.tt.txt b/NuGet/CopyMe.MySql.tt.txt
index 9c2a877..768a14c 100644
--- a/NuGet/CopyMe.MySql.tt.txt
+++ b/NuGet/CopyMe.MySql.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.MySql.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.MySql.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.Oracle.Managed.tt.txt b/NuGet/CopyMe.Oracle.Managed.tt.txt
index 9f8ec85..c1dee39 100644
--- a/NuGet/CopyMe.Oracle.Managed.tt.txt
+++ b/NuGet/CopyMe.Oracle.Managed.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Oracle.Managed.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Oracle.Managed.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.Oracle.x64.tt.txt b/NuGet/CopyMe.Oracle.x64.tt.txt
index 23fcb61..f3c44cb 100644
--- a/NuGet/CopyMe.Oracle.x64.tt.txt
+++ b/NuGet/CopyMe.Oracle.x64.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Oracle.x64.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Oracle.x64.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.Oracle.x86.tt.txt b/NuGet/CopyMe.Oracle.x86.tt.txt
index bd1be8c..793ff40 100644
--- a/NuGet/CopyMe.Oracle.x86.tt.txt
+++ b/NuGet/CopyMe.Oracle.x86.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Oracle.x86.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Oracle.x86.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.PostgreSQL.tt.txt b/NuGet/CopyMe.PostgreSQL.tt.txt
index acf5cab..4238a08 100644
--- a/NuGet/CopyMe.PostgreSQL.tt.txt
+++ b/NuGet/CopyMe.PostgreSQL.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.PostgreSQL.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.PostgreSQL.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.SQLite.tt.txt b/NuGet/CopyMe.SQLite.tt.txt
index 2f1edb7..06e6283 100644
--- a/NuGet/CopyMe.SQLite.tt.txt
+++ b/NuGet/CopyMe.SQLite.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SQLite.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SQLite.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.SapHana.tt.txt b/NuGet/CopyMe.SapHana.tt.txt
index 871d111..d727501 100644
--- a/NuGet/CopyMe.SapHana.tt.txt
+++ b/NuGet/CopyMe.SapHana.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SapHana.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SapHana.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.SqlCe.tt.txt b/NuGet/CopyMe.SqlCe.tt.txt
index dfcd827..ac6acf8 100644
--- a/NuGet/CopyMe.SqlCe.tt.txt
+++ b/NuGet/CopyMe.SqlCe.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SqlCe.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SqlCe.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.SqlServer.tt.txt b/NuGet/CopyMe.SqlServer.tt.txt
index b269502..15fd9ed 100644
--- a/NuGet/CopyMe.SqlServer.tt.txt
+++ b/NuGet/CopyMe.SqlServer.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SqlServer.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.SqlServer.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/CopyMe.Sybase.tt.txt b/NuGet/CopyMe.Sybase.tt.txt
index 27284da..e6b7a83 100644
--- a/NuGet/CopyMe.Sybase.tt.txt
+++ b/NuGet/CopyMe.Sybase.tt.txt
@@ -1,6 +1,6 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
-<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Sybase.ttinclude" #>
+<#@ include file="$(ProjectDir)LinqToDB.Templates\LinqToDB.Sybase.Tools.ttinclude" #>
<#@ include file="$(ProjectDir)LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
diff --git a/NuGet/Pack.bat b/NuGet/Pack.bat
index 3267684..a5be90c 100644
--- a/NuGet/Pack.bat
+++ b/NuGet/Pack.bat
@@ -1,11 +1,11 @@
@rem cd ..\..\linq2db\Source
@rem call Compile.bat
-@rem cd ..\..\linq2db.t4models\ToolsGenerator
+cd ..\..\linq2db.t4models\ToolsGenerator
-@rem %windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe ToolsGenerator.csproj /property:Configuration=Release
+%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe ToolsGenerator.csproj /property:Configuration=Release
-@rem cd ..\NuGet
+cd ..\NuGet
del *.nupkg
diff --git a/NuGet/PackAV.bat b/NuGet/PackAV.bat
new file mode 100644
index 0000000..c674c15
--- /dev/null
+++ b/NuGet/PackAV.bat
@@ -0,0 +1,31 @@
+@rem Building packages for appveyor
+@rem
+@rem first parameter - target package version
+@rem second parameter - target linq2db version
+
+set version=%1%
+
+echo packages version: %version% for linq2db version %2%
+
+del *.nupkg
+
+..\ToolsGenerator\bin\Release\ToolsGenerator.exe %2%
+
+..\Redist\NuGet Pack linq2db.t4models.nuspec -Version %version%
+
+..\Redist\NuGet Pack linq2db.Access.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.Firebird.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.MySql.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.SqlCe.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.SQLite.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.PostgreSQL.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.SqlServer.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.Sybase.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.SapHana.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.Oracle.x86.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.Oracle.x64.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.Oracle.Managed.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.DB2.nuspec -Version %version%
+..\Redist\NuGet Pack linq2db.Informix.nuspec -Version %version%
+
+del *.ttinclude
diff --git a/NuGet/linq2db.Access.nuspec b/NuGet/linq2db.Access.nuspec
index 6466f2c..b95c495 100644
--- a/NuGet/linq2db.Access.nuspec
+++ b/NuGet/linq2db.Access.nuspec
@@ -2,7 +2,7 @@
linq2db.Access
- 1.0.7.5
+ 1.7.5
LINQ to Access
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to Access is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for Access database and a reference to the linq2db nuget.
-
+
+ This package includes a T4 template to generate data models for Access database and a reference to the linq2db nuget.
+
linq linq2db Access LinqToDB ORM database DB SQL
@@ -22,7 +23,7 @@
-
-
+
+
diff --git a/NuGet/linq2db.DB2.nuspec b/NuGet/linq2db.DB2.nuspec
index dbd1486..328815d 100644
--- a/NuGet/linq2db.DB2.nuspec
+++ b/NuGet/linq2db.DB2.nuspec
@@ -2,7 +2,7 @@
linq2db.DB2
- 1.0.7.5
+ 1.7.5
LINQ to IBM DB2
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to DB2 is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for DB2 database and a reference to the linq2db nugets.
IBM Data Server Provider for .NET will still need to be installed on the production or development machine in order to connect to DB2.
-
-
+
linq linq2db DB2 LinqToDB ORM database DB SQL
@@ -23,8 +24,8 @@
-
-
-
+
+
+
diff --git a/NuGet/linq2db.Firebird.nuspec b/NuGet/linq2db.Firebird.nuspec
index a6e5fc5..a74318d 100644
--- a/NuGet/linq2db.Firebird.nuspec
+++ b/NuGet/linq2db.Firebird.nuspec
@@ -2,7 +2,7 @@
linq2db.Firebird
- 1.0.7.5
+ 1.7.5
LINQ to Firebird
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to Firebird is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for Firebird database and references to the linq2db and FirebirdSql.Data.FirebirdClient nugets.
-
+
+ This package includes a T4 template to generate data models for Firebird database and references to the linq2db and FirebirdSql.Data.FirebirdClient nugets.
+
linq linq2db Firebird LinqToDB ORM database DB SQL
@@ -24,7 +25,7 @@
-
-
+
+
diff --git a/NuGet/linq2db.Informix.nuspec b/NuGet/linq2db.Informix.nuspec
index 636019b..c2b2aef 100644
--- a/NuGet/linq2db.Informix.nuspec
+++ b/NuGet/linq2db.Informix.nuspec
@@ -2,7 +2,7 @@
linq2db.Informix
- 1.0.7.5
+ 1.7.5
LINQ to Informix
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to Informix is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for Informix database and a reference to the linq2db nugets.
IBM Data Server Provider for .NET will still need to be installed on the production or development machine in order to connect to Informix.
-
-
+
linq linq2db Informix LinqToDB ORM database DB SQL
@@ -23,8 +24,8 @@
-
-
-
+
+
+
diff --git a/NuGet/linq2db.MySql.nuspec b/NuGet/linq2db.MySql.nuspec
index b47c57b..4673a53 100644
--- a/NuGet/linq2db.MySql.nuspec
+++ b/NuGet/linq2db.MySql.nuspec
@@ -2,7 +2,7 @@
linq2db.MySql
- 1.0.7.5
+ 1.7.5
LINQ to MySql
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to MySql is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for MySql database and references to the linq2db and MySql.Data nugets.
-
+
+ This package includes a T4 template to generate data models for MySql database and references to the linq2db and MySql.Data nugets.
+
linq linq2db MySql LinqToDB ORM database DB SQL
@@ -24,7 +25,7 @@
-
+
diff --git a/NuGet/linq2db.Oracle.Managed.nuspec b/NuGet/linq2db.Oracle.Managed.nuspec
index 956b97b..0655cec 100644
--- a/NuGet/linq2db.Oracle.Managed.nuspec
+++ b/NuGet/linq2db.Oracle.Managed.nuspec
@@ -2,7 +2,7 @@
linq2db.Oracle.Managed
- 1.0.7.5
+ 1.7.5
LINQ to Oracle (ODP.NET) Managed
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to Oracle is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for Oracle database and references to the linq2db and odp.net.managed nugets
Oracle data provider for .NET will still need to be installed on the production or development machine in order to connect to Oracle.
-
-
+
linq linq2db Oracle LinqToDB ORM database DB SQL
@@ -25,7 +26,7 @@
-
+
diff --git a/NuGet/linq2db.Oracle.x64.nuspec b/NuGet/linq2db.Oracle.x64.nuspec
index 2742ded..85ee0b6 100644
--- a/NuGet/linq2db.Oracle.x64.nuspec
+++ b/NuGet/linq2db.Oracle.x64.nuspec
@@ -2,7 +2,7 @@
linq2db.Oracle.x64
- 1.0.7.5
+ 1.7.5
LINQ to Oracle (ODP.NET) x64
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to Oracle is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for Oracle database and references to the linq2db and odp.net.x64 nugets
Oracle data provider for .NET will still need to be installed on the production or development machine in order to connect to Oracle.
-
-
+
linq linq2db Oracle ODP LinqToDB ORM database DB SQL
@@ -25,7 +26,7 @@
-
+
diff --git a/NuGet/linq2db.Oracle.x86.nuspec b/NuGet/linq2db.Oracle.x86.nuspec
index 94c45c0..8c64a5d 100644
--- a/NuGet/linq2db.Oracle.x86.nuspec
+++ b/NuGet/linq2db.Oracle.x86.nuspec
@@ -2,7 +2,7 @@
linq2db.Oracle.x86
- 1.0.7.5
+ 1.7.5
LINQ to Oracle (ODP.NET) x86
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to Oracle is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for Oracle database and references to the linq2db and odp.net.x86 nugets
Oracle data provider for .NET will still need to be installed on the production or development machine in order to connect to Oracle.
-
-
+
linq linq2db Oracle ODP LinqToDB ORM database DB SQL
@@ -25,7 +26,7 @@
-
+
diff --git a/NuGet/linq2db.PostgreSQL.nuspec b/NuGet/linq2db.PostgreSQL.nuspec
index 832007b..87d829a 100644
--- a/NuGet/linq2db.PostgreSQL.nuspec
+++ b/NuGet/linq2db.PostgreSQL.nuspec
@@ -2,7 +2,7 @@
linq2db.PostgreSQL
- 1.0.7.5
+ 1.7.5
LINQ to PostgreSQL
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to PostgreSQL is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for PostgreSQL database and references to the linq2db and Npgsql nugets.
-
+
+ This package includes a T4 template to generate data models for PostgreSQL database and references to the linq2db and Npgsql nugets.
+
linq linq2db Npgsql PostgreSQL LinqToDB ORM database DB SQL
@@ -25,7 +26,7 @@
-
+
diff --git a/NuGet/linq2db.SQLite.nuspec b/NuGet/linq2db.SQLite.nuspec
index 4a115b5..48d5f4e 100644
--- a/NuGet/linq2db.SQLite.nuspec
+++ b/NuGet/linq2db.SQLite.nuspec
@@ -2,7 +2,7 @@
linq2db.SQLite
- 1.0.7.5
+ 1.7.5
LINQ to SQLite
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to SQLite is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for SQLite database and references to the linq2db and System.Data.SQLite nugets.
-
+
+ This package includes a T4 template to generate data models for SQLite database and references to the linq2db and System.Data.SQLite nugets.
+
linq linq2db SQLite LinqToDB ORM database DB SQL
@@ -25,7 +26,7 @@
-
+
diff --git a/NuGet/linq2db.SapHana.nuspec b/NuGet/linq2db.SapHana.nuspec
index f65d20a..2eefd0a 100644
--- a/NuGet/linq2db.SapHana.nuspec
+++ b/NuGet/linq2db.SapHana.nuspec
@@ -2,7 +2,7 @@
linq2db.SapHana
- 1.0.7.5
+ 1.7.5
LINQ to SAP HANA
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to SAP HANA is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for Sybase database and a reference to the linq2db nugets.
SapHana data provider for .NET will still need to be installed on the production or development machine in order to connect to Sybase.
-
-
+
linq linq2db SapHana LinqToDB ORM database DB SQL
@@ -24,7 +25,7 @@
-
+
diff --git a/NuGet/linq2db.SqlCe.nuspec b/NuGet/linq2db.SqlCe.nuspec
index 1a1d0df..2f05066 100644
--- a/NuGet/linq2db.SqlCe.nuspec
+++ b/NuGet/linq2db.SqlCe.nuspec
@@ -2,7 +2,7 @@
linq2db.SqlCe
- 1.0.7.5
+ 1.7.5
LINQ to SqlCe
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to SqlCe is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for SqlCe database and references to the linq2db and Microsoft.SqlServer.Compact nugets.
-
+
+ This package includes a T4 template to generate data models for SqlCe database and references to the linq2db and Microsoft.SqlServer.Compact nugets.
+
linq linq2db SqlCe SqlServerCe SqlServer Compact LinqToDB ORM database DB SQL
@@ -24,7 +25,7 @@
-
+
diff --git a/NuGet/linq2db.SqlServer.nuspec b/NuGet/linq2db.SqlServer.nuspec
index 9670c7a..e953f4c 100644
--- a/NuGet/linq2db.SqlServer.nuspec
+++ b/NuGet/linq2db.SqlServer.nuspec
@@ -2,7 +2,7 @@
linq2db.SqlServer
- 1.0.7.5
+ 1.7.5
LINQ to SqlServer
Igor Tkachev
@@ -12,9 +12,10 @@
false
LINQ to SqlServer is a data access technology that provides a run-time infrastructure for managing relational data as objects.
- This package includes a T4 template to generate data models for SqlServer database and references to the linq2db.
-
+
+ This package includes a T4 template to generate data models for SqlServer database and references to the linq2db.
+
linq linq2db SqlServer LinqToDB ORM database DB SQL
@@ -23,8 +24,8 @@
-
-
+
+
diff --git a/NuGet/linq2db.Sybase.nuspec b/NuGet/linq2db.Sybase.nuspec
index 67e6aa1..eec0af0 100644
--- a/NuGet/linq2db.Sybase.nuspec
+++ b/NuGet/linq2db.Sybase.nuspec
@@ -2,7 +2,7 @@
linq2db.Sybase
- 1.0.7.5
+ 1.7.5
LINQ to Sybase ASE
Igor Tkachev
@@ -12,10 +12,11 @@
false
LINQ to Sybase ASE is a data access technology that provides a run-time infrastructure for managing relational data as objects.
+
+
This package includes a T4 template to generate data models for Sybase database and a reference to the linq2db nugets.
Sybase data provider for .NET will still need to be installed on the production or development machine in order to connect to Sybase.
-
-
+
linq linq2db Sybase LinqToDB ORM database DB SQL
@@ -25,7 +26,7 @@
-
+
diff --git a/NuGet/linq2db.t4models.nuspec b/NuGet/linq2db.t4models.nuspec
index 49f8894..33afbc7 100644
--- a/NuGet/linq2db.t4models.nuspec
+++ b/NuGet/linq2db.t4models.nuspec
@@ -2,7 +2,7 @@
linq2db.t4models
- 1.0.7.5
+ 1.7.5
LINQ to DB T4 Models
Igor Tkachev
@@ -18,12 +18,13 @@
-
+
+
@@ -41,6 +42,6 @@
-
+
\ No newline at end of file
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..c240cc9
--- /dev/null
+++ b/README.md
@@ -0,0 +1,164 @@
+# t4models
+To create a data model template take a look at one of the CopyMe.XXX.tt.txt file in your LinqToDB.Templates project folder.
+
+* Use the following initialization before you call the LoadMetadata() method.
+
+```c#
+NamespaceName = "DataModels"; // Namespace of the generated classes.
+
+DataContextName = null; // DataContext class name. If null - database name + "DB".
+BaseDataContextClass = null; // Base DataContext class name. If null - LinqToDB.Data.DataConnection.
+GenerateConstructors = true; // Enforce generating DataContext constructors.
+DefaultConfiguration = null; // Defines default configuration for default DataContext constructor.
+
+BaseEntityClass = null; // Base Entity class name. If null - none.
+DatabaseName = null; // Table database name - [Table(Database="DatabaseName")].
+GenerateDatabaseName = false; // Always generate table database name, even though DatabaseName is null.
+IncludeDefaultSchema = true; // Default schema name is generated - [Table(Database="Northwind", Schema="dbo", Name="Customers")]
+OneToManyAssociationType = "IEnumerable<{0}>"; // One To Many association type. Change it to "List<{0}>" if needed.
+GenerateAssociations = true; // Enforce generating associations.
+GenerateBackReferences = true; // Enforce generating backreference associations.
+
+ReplaceSimilarTables = true; // Replaces stored procedure result class names with similar to existing table class names.
+GenerateFindExtensions = true; // Generates find extension methods based on PKs information.
+IsCompactColumns = true; // If true, column compact view.
+
+PluralizeClassNames = false; // If true, pluralizes table class names.
+SingularizeClassNames = true; // If true, singularizes table class names.
+PluralizeDataContextPropertyNames = true; // If true, pluralizes DataContext property names.
+SingularizeDataContextPropertyNames = false; // If true, singularizes DataContex pProperty names.
+
+GenerateDataTypes = false; // If true, generates the DataType/Length/Precision/Scale properties of the Column attribute (unless overriden by the properties below).
+GenerateDataTypeProperty = null; // If true, generates the DataType property of the Column attribute. If false, excludes generation on the DataType property even if GenerateDataTypes == true.
+GenerateLengthProperty = null; // If true, generates the Length property of the Column attribute. If false, excludes generation on the Length property even if GenerateDataTypes == true.
+GeneratePrecisionProperty = null; // If true, generates the Precision property of the Column attribute. If false, excludes generation on the Precision property even if GenerateDataTypes == true.
+GenerateScaleProperty = null; // If true, generates the Scale property of the Column attribute. If false, excludes generation on the Scale property even if GenerateDataTypes == true.
+GenerateDbTypes = false; // If true, generates the DbType property of the Column attribute.
+
+GenerateObsoleteAttributeForAliases = false; // If true, generates [Obsolete] attribute for aliases.
+IsCompactColumnAliases = true; // If true, column alias compact view.
+
+GetSchemaOptions.ExcludedSchemas = new[] { "TestUser", "SYSSTAT" }; // Defines excluded schemas.
+GetSchemaOptions.IncludedSchemas = new[] { "TestUser", "SYS" }; // Defines only included schemas.
+
+GetSchemaOptions.ExcludedCatalogs = new[] { "TestUser", "SYSSTAT" }; // Defines excluded catalogs.
+GetSchemaOptions.IncludedCatalogs = new[] { "TestUser", "SYS" }; // Defines only included catalogs.
+```
+
+* Use the following code to modify your model befor you call the GenerateModel() method.
+
+```c#
+GetTable("Person").TypeName = "MyName"; // Replaces table name.
+GetColumn("Person", "PersonID").MemberName = "ID"; // Replaces column PersonID of Person table with ID.
+GetFK("Orders", "FK_Orders_Customers").MemberName = "Customers"; // Replaces association name.
+GetFK("Orders", "FK_Orders_Customers").AssociationType = AssociationType.OneToMany; // Changes association type.
+
+SetTable(string tableName,
+ string TypeName = null,
+ string DataContextPropertyName = null)
+
+ .Column(string columnName, string MemberName = null, string Type = null, bool? IsNullable = null)
+ .FK (string fkName, string MemberName = null, AssociationType? AssociationType = null)
+ ;
+
+Model.Usings.Add("MyNamespace"); // Adds using of namespace.
+
+// Replaces all the columns where name is 'TableName' + 'ID' with 'ID'.
+foreach (var t in Tables.Values)
+ foreach (var c in t.Columns.Values)
+ if (c.IsPrimaryKey && c.MemberName == t.TypeName + "ID")
+ c.MemberName = "ID";
+```
+
+* Useful members and data structues.
+
+```c#
+Dictionary Tables = new Dictionary ();
+Dictionary Procedures = new Dictionary();
+
+Table GetTable (string name);
+Procedure GetProcedure (string name);
+Column GetColumn (string tableName, string columnName);
+ForeignKey GetFK (string tableName, string fkName);
+ForeignKey GetForeignKey(string tableName, string fkName);
+
+public class Table
+{
+ public string Schema;
+ public string TableName;
+ public string DataContextPropertyName;
+ public bool IsView;
+ public string Description;
+ public string AliasPropertyName;
+ public string AliasTypeName;
+ public string TypeName;
+
+ public Dictionary Columns;
+ public Dictionary ForeignKeys;
+}
+
+public partial class Column : Property
+{
+ public string ColumnName; // Column name in database
+ public bool IsNullable;
+ public bool IsIdentity;
+ public string ColumnType; // Type of the column in database
+ public DbType DbType;
+ public string Description;
+ public bool IsPrimaryKey;
+ public int PrimaryKeyOrder;
+ public bool SkipOnUpdate;
+ public bool SkipOnInsert;
+ public bool IsDuplicateOrEmpty;
+ public string AliasName;
+ public string MemberName;
+}
+
+public enum AssociationType
+{
+ Auto,
+ OneToOne,
+ OneToMany,
+ ManyToOne,
+}
+
+public partial class ForeignKey : Property
+{
+ public string KeyName;
+ public Table OtherTable;
+ public List ThisColumns;
+ public List OtherColumns;
+ public bool CanBeNull;
+ public ForeignKey BackReference;
+ public string MemberName;
+ public AssociationType AssociationType;
+}
+
+public partial class Procedure : Method
+{
+ public string Schema;
+ public string ProcedureName;
+ public bool IsFunction;
+ public bool IsTableFunction;
+ public bool IsDefaultSchema;
+
+ public Table ResultTable;
+ public Exception ResultException;
+ public List SimilarTables;
+ public List ProcParameters;
+}
+
+public class Parameter
+{
+ public string SchemaName;
+ public string SchemaType;
+ public bool IsIn;
+ public bool IsOut;
+ public bool IsResult;
+ public int? Size;
+ public string ParameterName;
+ public string ParameterType;
+ public Type SystemType;
+ public string DataType;
+}
+```
diff --git a/T4Models.sln b/T4Models.sln
index 4ac9c83..7163b2f 100644
--- a/T4Models.sln
+++ b/T4Models.sln
@@ -23,6 +23,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Templates", "Templates", "{
Templates\LinqToDB.Sybase.ttinclude = Templates\LinqToDB.Sybase.ttinclude
Templates\LinqToDB.ttinclude = Templates\LinqToDB.ttinclude
Templates\NotifyPropertyChanged.ttinclude = Templates\NotifyPropertyChanged.ttinclude
+ Templates\ObsoleteAttributes.ttinclude = Templates\ObsoleteAttributes.ttinclude
Templates\PluralizationService.ttinclude = Templates\PluralizationService.ttinclude
Templates\ReadMe.LinqToDB.md = Templates\ReadMe.LinqToDB.md
Templates\T4Model.ttinclude = Templates\T4Model.ttinclude
@@ -80,6 +81,8 @@ EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{DECC80B7-6CC6-4BF6-A365-1220B37D5396}"
ProjectSection(SolutionItems) = preProject
appveyor.yml = appveyor.yml
+ NuGet\PackAV.bat = NuGet\PackAV.bat
+ README.md = README.md
EndProjectSection
EndProject
Global
diff --git a/Templates/LinqToDB.ttinclude b/Templates/LinqToDB.ttinclude
index 9e948f4..caaffd5 100644
--- a/Templates/LinqToDB.ttinclude
+++ b/Templates/LinqToDB.ttinclude
@@ -12,17 +12,17 @@ Action AfterGenerateLinqToDBModel = () => {};
Func GenerateProviderSpecificTable = t => null;
-bool GenerateObsoleteAttributeForAliases = false;
-bool GenerateFindExtensions = true;
-bool IsCompactColumns = true;
-bool IsCompactColumnAliases = true;
-bool GenerateDataTypes = false;
-bool? GenerateLengthProperty = null;
-bool? GeneratePrecisionProperty = null;
-bool? GenerateScaleProperty = null;
-bool GenerateDbTypes = false;
-bool GenerateSchemaAsType = false;
-bool GenerateViews = true;
+bool GenerateObsoleteAttributeForAliases = false;
+bool GenerateFindExtensions = true;
+bool IsCompactColumns = true;
+bool IsCompactColumnAliases = true;
+bool GenerateDataTypes = false;
+bool? GenerateLengthProperty = null;
+bool? GeneratePrecisionProperty = null;
+bool? GenerateScaleProperty = null;
+bool GenerateDbTypes = false;
+bool GenerateSchemaAsType = false;
+bool GenerateViews = true;
string SchemaNameSuffix = "Schema";
string SchemaDataContextTypeName = "DataContext";
@@ -409,7 +409,7 @@ void GenerateTypesFromMetadata()
{
if (!string.IsNullOrEmpty(key.KeyName))
aa.Parameters.Add("KeyName=\"" + key.KeyName + "\"");
- if (GenerateBackReferences && !string.IsNullOrEmpty(key.BackReference.KeyName))
+ if (GenerateBackReferences && !string.IsNullOrEmpty(key.BackReference.MemberName))
aa.Parameters.Add("BackReferenceName=\"" + key.BackReference.MemberName + "\"");
}
else
diff --git a/Tests/LinqToDB/Access.generated.cs b/Tests/LinqToDB/Access.generated.cs
index 61b0fff..c22832c 100644
--- a/Tests/LinqToDB/Access.generated.cs
+++ b/Tests/LinqToDB/Access.generated.cs
@@ -18,7 +18,7 @@ namespace AccessDataContext
{
///
/// Database : TestData
- /// Data Source : F:\job\t4models\\Data\TestData.mdb
+ /// Data Source : I:\linq2db.t4models\\Data\TestData.mdb
/// Server Version : 04.00.0000
///
public partial class TestDataDB : LinqToDB.Data.DataConnection
diff --git a/Tests/LinqToDB/Firebird.generated.cs b/Tests/LinqToDB/Firebird.generated.cs
index cea388c..d172b46 100644
--- a/Tests/LinqToDB/Firebird.generated.cs
+++ b/Tests/LinqToDB/Firebird.generated.cs
@@ -190,10 +190,10 @@ public partial class PATIENT
#region Associations
///
- /// INTEG_7743
+ /// INTEG_8333
///
- [Association(ThisKey="PERSONID", OtherKey="PERSONID", CanBeNull=false, Relationship=Relationship.ManyToOne, KeyName="INTEG_7743", BackReferenceName="INTEG7743")]
- public PERSON INTEG7743 { get; set; }
+ [Association(ThisKey="PERSONID", OtherKey="PERSONID", CanBeNull=false, Relationship=Relationship.ManyToOne, KeyName="INTEG_8333", BackReferenceName="INTEG8333")]
+ public PERSON INTEG8333 { get; set; }
#endregion
}
@@ -216,10 +216,10 @@ public partial class PERSON
public IEnumerable DOCTORs { get; set; }
///
- /// INTEG_7743_BackReference
+ /// INTEG_8333_BackReference
///
[Association(ThisKey="PERSONID", OtherKey="PERSONID", CanBeNull=true, Relationship=Relationship.OneToMany, IsBackReference=true)]
- public IEnumerable INTEG7743 { get; set; }
+ public IEnumerable INTEG8333 { get; set; }
#endregion
}
@@ -457,75 +457,6 @@ public partial class PERSON_SELECTALLResult
}
#endregion
-
- #region PERSON_SELECTBYKEY
-
- public static IEnumerable PERSON_SELECTBYKEY(this DataConnection dataConnection, int? ID, out int? PERSONID, out string FIRSTNAME, out string LASTNAME, out string MIDDLENAME, out char? GENDER)
- {
- var ret = dataConnection.QueryProc("PERSON_SELECTBYKEY",
- new DataParameter("ID", ID, DataType.Int32));
-
- PERSONID = Converter.ChangeTypeTo (((IDbDataParameter)dataConnection.Command.Parameters["PERSONID"]). Value);
- FIRSTNAME = Converter.ChangeTypeTo(((IDbDataParameter)dataConnection.Command.Parameters["FIRSTNAME"]). Value);
- LASTNAME = Converter.ChangeTypeTo(((IDbDataParameter)dataConnection.Command.Parameters["LASTNAME"]). Value);
- MIDDLENAME = Converter.ChangeTypeTo(((IDbDataParameter)dataConnection.Command.Parameters["MIDDLENAME"]).Value);
- GENDER = Converter.ChangeTypeTo (((IDbDataParameter)dataConnection.Command.Parameters["GENDER"]). Value);
-
- return ret;
- }
-
- public partial class PERSON_SELECTBYKEYResult
- {
- public int? PERSONID { get; set; }
- public string FIRSTNAME { get; set; }
- public string LASTNAME { get; set; }
- public string MIDDLENAME { get; set; }
- public string GENDER { get; set; }
- }
-
- #endregion
-
- #region PERSON_SELECTBYNAME
-
- public static IEnumerable PERSON_SELECTBYNAME(this DataConnection dataConnection, string IN_FIRSTNAME, string IN_LASTNAME, out int? PERSONID, out string FIRSTNAME, out string LASTNAME, out string MIDDLENAME, out char? GENDER)
- {
- var ret = dataConnection.QueryProc("PERSON_SELECTBYNAME",
- new DataParameter("IN_FIRSTNAME", IN_FIRSTNAME, DataType.NVarChar),
- new DataParameter("IN_LASTNAME", IN_LASTNAME, DataType.NVarChar));
-
- PERSONID = Converter.ChangeTypeTo (((IDbDataParameter)dataConnection.Command.Parameters["PERSONID"]). Value);
- FIRSTNAME = Converter.ChangeTypeTo(((IDbDataParameter)dataConnection.Command.Parameters["FIRSTNAME"]). Value);
- LASTNAME = Converter.ChangeTypeTo(((IDbDataParameter)dataConnection.Command.Parameters["LASTNAME"]). Value);
- MIDDLENAME = Converter.ChangeTypeTo(((IDbDataParameter)dataConnection.Command.Parameters["MIDDLENAME"]).Value);
- GENDER = Converter.ChangeTypeTo (((IDbDataParameter)dataConnection.Command.Parameters["GENDER"]). Value);
-
- return ret;
- }
-
- public partial class PERSON_SELECTBYNAMEResult
- {
- public int? PERSONID { get; set; }
- public string FIRSTNAME { get; set; }
- public string LASTNAME { get; set; }
- public string MIDDLENAME { get; set; }
- public string GENDER { get; set; }
- }
-
- #endregion
-
- #region PERSON_UPDATE
-
- public static int PERSON_UPDATE(this DataConnection dataConnection, int? PERSONID, string FIRSTNAME, string LASTNAME, string MIDDLENAME, char? GENDER)
- {
- return dataConnection.ExecuteProc("PERSON_UPDATE",
- new DataParameter("PERSONID", PERSONID, DataType.Int32),
- new DataParameter("FIRSTNAME", FIRSTNAME, DataType.NVarChar),
- new DataParameter("LASTNAME", LASTNAME, DataType.NVarChar),
- new DataParameter("MIDDLENAME", MIDDLENAME, DataType.NVarChar),
- new DataParameter("GENDER", GENDER, DataType.NChar));
- }
-
- #endregion
}
public static partial class TableExtensions
diff --git a/Tests/LinqToDB/Oracle.generated.cs b/Tests/LinqToDB/Oracle.generated.cs
index 0de973f..3e08e9b 100644
--- a/Tests/LinqToDB/Oracle.generated.cs
+++ b/Tests/LinqToDB/Oracle.generated.cs
@@ -36,6 +36,7 @@ public partial class TestDataDB : LinqToDB.Data.DataConnection
public ITable People { get { return this.GetTable(); } }
public ITable SEQUENCETESTs { get { return this.GetTable(); } }
public ITable STG_TRADE_INFORMATION { get { return this.GetTable(); } }
+ public ITable STRINGTESTs { get { return this.GetTable(); } }
public ITable T_ENTITY { get { return this.GetTable(); } }
public ITable T_TEST_USER { get { return this.GetTable(); } }
public ITable T_TEST_USER_CONTRACT { get { return this.GetTable(); } }
@@ -248,6 +249,14 @@ public partial class STG_TRADE_INFORMATION
[Column(DbType="DATE", DataType=DataType.DateTime, Length=7), Nullable] public DateTime? VALUE_AS_DATE { get; set; } // DATE
}
+ [Table(Schema="TESTUSER", Name="STRINGTEST")]
+ public partial class STRINGTEST
+ {
+ [Column(DbType="VARCHAR2(50)", DataType=DataType.VarChar, Length=50), Nullable] public string STRINGVALUE1 { get; set; } // VARCHAR2(50)
+ [Column(DbType="CHAR(50)", DataType=DataType.Char, Length=50), Nullable] public string STRINGVALUE2 { get; set; } // CHAR(50)
+ [Column(DbType="VARCHAR2(50)", DataType=DataType.VarChar, Length=50), NotNull ] public string KEYVALUE { get; set; } // VARCHAR2(50)
+ }
+
[Table(Schema="TESTUSER", Name="T_ENTITY")]
public partial class T_ENTITY
{
@@ -265,10 +274,10 @@ public partial class T_TEST_USER
#region Associations
///
- /// SYS_C0037098_BackReference
+ /// SYS_C0039603_BackReference
///
[Association(ThisKey="USER_ID", OtherKey="USER_ID", CanBeNull=true, Relationship=Relationship.OneToMany, IsBackReference=true)]
- public IEnumerable SYSC0037098 { get; set; }
+ public IEnumerable SYSC0039603 { get; set; }
#endregion
}
@@ -284,10 +293,10 @@ public partial class T_TEST_USER_CONTRACT
#region Associations
///
- /// SYS_C0037098
+ /// SYS_C0039603
///
- [Association(ThisKey="USER_ID", OtherKey="USER_ID", CanBeNull=false, Relationship=Relationship.ManyToOne, KeyName="SYS_C0037098", BackReferenceName="SYSC0037098")]
- public T_TEST_USER SYSC0037098 { get; set; }
+ [Association(ThisKey="USER_ID", OtherKey="USER_ID", CanBeNull=false, Relationship=Relationship.ManyToOne, KeyName="SYS_C0039603", BackReferenceName="SYSC0039603")]
+ public T_TEST_USER SYSC0039603 { get; set; }
#endregion
}
diff --git a/Tests/LinqToDB/SQLite.generated.cs b/Tests/LinqToDB/SQLite.generated.cs
index 106990a..90d00ec 100644
--- a/Tests/LinqToDB/SQLite.generated.cs
+++ b/Tests/LinqToDB/SQLite.generated.cs
@@ -15,7 +15,7 @@ namespace SQLiteDataContext
///
/// Database : TestData
/// Data Source : TestData
- /// Server Version : 3.14.2
+ /// Server Version : 3.9.2
///
public partial class TestDataDB : LinqToDB.Data.DataConnection
{
diff --git a/Tests/LinqToDB/SqlCe.generated.cs b/Tests/LinqToDB/SqlCe.generated.cs
index 525ac9c..3f016fe 100644
--- a/Tests/LinqToDB/SqlCe.generated.cs
+++ b/Tests/LinqToDB/SqlCe.generated.cs
@@ -14,7 +14,7 @@ namespace SqlCeDataContext
{
///
/// Database : TestData
- /// Data Source : F:\job\t4models\\Data\TestData.sdf
+ /// Data Source : I:\linq2db.t4models\\Data\TestData.sdf
/// Server Version : 4.0.8876.1
///
public partial class TestDataDB : LinqToDB.Data.DataConnection
diff --git a/Tests/LinqToDB/SqlServer.generated.cs b/Tests/LinqToDB/SqlServer.generated.cs
index 0cdcd2f..adb3d56 100644
--- a/Tests/LinqToDB/SqlServer.generated.cs
+++ b/Tests/LinqToDB/SqlServer.generated.cs
@@ -17,6 +17,8 @@
using LinqToDB.DataProvider.SqlServer;
using LinqToDB.Mapping;
+using Microsoft.SqlServer.Types;
+
namespace DataModel
{
///
@@ -1020,9 +1022,9 @@ public partial class AllTypes2
[Column(DbType="datetimeoffset(7)", DataType=DataType.DateTimeOffset, Precision=7), Nullable ] public DateTimeOffset? datetimeoffsetDataType { get; set; } // datetimeoffset(7)
[Column(DbType="datetime2(7)", DataType=DataType.DateTime2, Precision=7), Nullable ] public DateTime? datetime2DataType { get; set; } // datetime2(7)
[Column(DbType="time(7)", DataType=DataType.Time, Precision=7), Nullable ] public TimeSpan? timeDataType { get; set; } // time(7)
- [Column(DbType="hierarchyid", DataType=DataType.Udt), Nullable ] public object hierarchyidDataType { get; set; } // hierarchyid
- [Column(DbType="geography", DataType=DataType.Udt), Nullable ] public object geographyDataType { get; set; } // geography
- [Column(DbType="geometry", DataType=DataType.Udt), Nullable ] public object geometryDataType { get; set; } // geometry
+ [Column(DbType="hierarchyid", DataType=DataType.Udt), Nullable ] public SqlHierarchyId? hierarchyidDataType { get; set; } // hierarchyid
+ [Column(DbType="geography", DataType=DataType.Udt), Nullable ] public SqlGeography geographyDataType { get; set; } // geography
+ [Column(DbType="geometry", DataType=DataType.Udt), Nullable ] public SqlGeometry geometryDataType { get; set; } // geometry
}
[Table(Database="TestData", Name="BinaryData")]
@@ -1251,8 +1253,8 @@ public partial class Person
[Table(Database="TestData", Name="SqlTypes")]
public partial class SqlType
{
- [Column(DbType="int", DataType=DataType.Int32), PrimaryKey, NotNull] public int ID { get; set; } // int
- [Column(DbType="hierarchyid", DataType=DataType.Udt), Nullable ] public object HID { get; set; } // hierarchyid
+ [Column(DbType="int", DataType=DataType.Int32), PrimaryKey, NotNull] public int ID { get; set; } // int
+ [Column(DbType="hierarchyid", DataType=DataType.Udt), Nullable ] public SqlHierarchyId? HID { get; set; } // hierarchyid
}
[Table(Database="TestData", Name="TestIdentity")]
diff --git a/Tests/LinqToDB/SqlServer.tt b/Tests/LinqToDB/SqlServer.tt
index df3860b..c30639c 100644
--- a/Tests/LinqToDB/SqlServer.tt
+++ b/Tests/LinqToDB/SqlServer.tt
@@ -2,6 +2,7 @@
<#@ output extension=".generated.cs" #>
<#@ include file="..\..\Templates\LinqToDB.SqlServer.ttinclude" #>
<#@ include file="..\..\Templates\PluralizationService.ttinclude" #>
+<#@ include file="..\..\Templates\ObsoleteAttributes.ttinclude" #>
<#@ assembly name="$(SolutionDir)\packages\Microsoft.SqlServer.Types.11.0.2\lib\Net20\Microsoft.SqlServer.Types.dll" #>
<#@ assembly name="$(SolutionDir)\packages\linq2db.1.7.5\lib\net40\linq2db.dll" #>
<#
diff --git a/Tests/LinqToDB/T4Model.LinqToDB.csproj b/Tests/LinqToDB/T4Model.LinqToDB.csproj
index cfbed13..a35ce59 100644
--- a/Tests/LinqToDB/T4Model.LinqToDB.csproj
+++ b/Tests/LinqToDB/T4Model.LinqToDB.csproj
@@ -41,8 +41,8 @@
..\..\packages\FirebirdSql.Data.FirebirdClient.5.6.0\lib\net45\FirebirdSql.Data.FirebirdClient.dll
True
-
- ..\..\packages\linq2db.1.7.5\lib\net45\linq2db.dll
+
+ ..\..\packages\linq2db.1.7.6\lib\net45\linq2db.dll
True
diff --git a/Tests/LinqToDB/packages.config b/Tests/LinqToDB/packages.config
index 1b2626b..147a212 100644
--- a/Tests/LinqToDB/packages.config
+++ b/Tests/LinqToDB/packages.config
@@ -1,7 +1,7 @@
-
+
diff --git a/ToolsGenerator/Program.cs b/ToolsGenerator/Program.cs
index 6b5f298..a0d51a7 100644
--- a/ToolsGenerator/Program.cs
+++ b/ToolsGenerator/Program.cs
@@ -9,6 +9,9 @@ class Program
{
static int Main(string[] args)
{
+ if (args != null && args.Length > 0)
+ DefaultVersion = args[0];
+
var nugetDir = Environment.CurrentDirectory;
while (!Directory.Exists(Path.Combine(nugetDir, "NuGet")))
@@ -61,6 +64,8 @@ static void CreateToolsFile(string nugetDir, string specFile, string toolsFile,
using (var tf = File.CreateText(Path.Combine(nugetDir, toolsFile)))
foreach (var tool in tools)
tf.WriteLine(tool, version);
+
+ Console.WriteLine("{0}...OK", toolsFile);
}
static void CreateProviderFile3(string nugetDir, string nuspec, string provider, string baseProvider, params string[] tools)
@@ -102,8 +107,12 @@ static void CreateProviderFile(string nugetDir, string provider, params string[]
CreateProviderFile2(nugetDir, provider, provider, tools);
}
+ private static string DefaultVersion = null;
static string GetVersion(string specFile)
{
+ if (!string.IsNullOrEmpty(DefaultVersion))
+ return DefaultVersion;
+
var version =
(
from e in XDocument.Load(specFile).Root.Elements()
diff --git a/appveyor.yml b/appveyor.yml
index 4d8d77d..f02428f 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,7 +1,8 @@
configuration: Release
environment:
- packageVersion: 1.0.7.5
+ packageVersion: 1.7.6
+ linq2dbVersion: 1.7.6
version: $(packageVersion).{build}
@@ -22,7 +23,7 @@ build:
after_build:
- cmd: cd NuGet
-- cmd: Pack.bat
+- cmd: PackAV.bat %packageVersion% %linq2dbVersion%
- cmd: cd ..
@@ -36,6 +37,8 @@ deploy:
api_key:
secure: LDw0jeA1Yo3R4/TKv2kmlgJR8dTT6Wun2MONq3uDvtVQJG4LOU9LjvVTAc7IgRfm
skip_symbols: true
+ on:
+ branch: master
- provider: NuGet
api_key:
diff --git a/packages/linq2db.1.7.5/lib/net40/linq2db.dll b/packages/linq2db.1.7.5/lib/net40/linq2db.dll
deleted file mode 100644
index 3069004..0000000
Binary files a/packages/linq2db.1.7.5/lib/net40/linq2db.dll and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/net40/linq2db.pdb b/packages/linq2db.1.7.5/lib/net40/linq2db.pdb
deleted file mode 100644
index f3eeb40..0000000
Binary files a/packages/linq2db.1.7.5/lib/net40/linq2db.pdb and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/net45/linq2db.dll b/packages/linq2db.1.7.5/lib/net45/linq2db.dll
deleted file mode 100644
index 937ff89..0000000
Binary files a/packages/linq2db.1.7.5/lib/net45/linq2db.dll and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/net45/linq2db.pdb b/packages/linq2db.1.7.5/lib/net45/linq2db.pdb
deleted file mode 100644
index 71359a7..0000000
Binary files a/packages/linq2db.1.7.5/lib/net45/linq2db.pdb and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/netcore45/linq2db.WindowsStore.dll b/packages/linq2db.1.7.5/lib/netcore45/linq2db.WindowsStore.dll
deleted file mode 100644
index 1c3d867..0000000
Binary files a/packages/linq2db.1.7.5/lib/netcore45/linq2db.WindowsStore.dll and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/netcore45/linq2db.WindowsStore.pdb b/packages/linq2db.1.7.5/lib/netcore45/linq2db.WindowsStore.pdb
deleted file mode 100644
index 6e93141..0000000
Binary files a/packages/linq2db.1.7.5/lib/netcore45/linq2db.WindowsStore.pdb and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/sl4/linq2db.Silverlight.dll b/packages/linq2db.1.7.5/lib/sl4/linq2db.Silverlight.dll
deleted file mode 100644
index e0e4335..0000000
Binary files a/packages/linq2db.1.7.5/lib/sl4/linq2db.Silverlight.dll and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/sl4/linq2db.Silverlight.pdb b/packages/linq2db.1.7.5/lib/sl4/linq2db.Silverlight.pdb
deleted file mode 100644
index 8a179eb..0000000
Binary files a/packages/linq2db.1.7.5/lib/sl4/linq2db.Silverlight.pdb and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/sl5/linq2db.Silverlight.dll b/packages/linq2db.1.7.5/lib/sl5/linq2db.Silverlight.dll
deleted file mode 100644
index 67ade46..0000000
Binary files a/packages/linq2db.1.7.5/lib/sl5/linq2db.Silverlight.dll and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/sl5/linq2db.Silverlight.pdb b/packages/linq2db.1.7.5/lib/sl5/linq2db.Silverlight.pdb
deleted file mode 100644
index 7ab6b08..0000000
Binary files a/packages/linq2db.1.7.5/lib/sl5/linq2db.Silverlight.pdb and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/windows8/linq2db.WindowsStore.dll b/packages/linq2db.1.7.5/lib/windows8/linq2db.WindowsStore.dll
deleted file mode 100644
index 1c3d867..0000000
Binary files a/packages/linq2db.1.7.5/lib/windows8/linq2db.WindowsStore.dll and /dev/null differ
diff --git a/packages/linq2db.1.7.5/lib/windows8/linq2db.WindowsStore.pdb b/packages/linq2db.1.7.5/lib/windows8/linq2db.WindowsStore.pdb
deleted file mode 100644
index 6e93141..0000000
Binary files a/packages/linq2db.1.7.5/lib/windows8/linq2db.WindowsStore.pdb and /dev/null differ
diff --git a/packages/linq2db.1.7.5/linq2db.1.7.5.nupkg b/packages/linq2db.1.7.5/linq2db.1.7.5.nupkg
deleted file mode 100644
index 2288003..0000000
Binary files a/packages/linq2db.1.7.5/linq2db.1.7.5.nupkg and /dev/null differ
diff --git a/packages/linq2db.1.7.5/Readme.txt b/packages/linq2db.1.7.6/Readme.txt
similarity index 81%
rename from packages/linq2db.1.7.5/Readme.txt
rename to packages/linq2db.1.7.6/Readme.txt
index 2051867..0b47b89 100644
--- a/packages/linq2db.1.7.5/Readme.txt
+++ b/packages/linq2db.1.7.6/Readme.txt
@@ -1,8 +1,15 @@
-LINQ to DB 1.0.7.5 Release Notes
+LINQ to DB 1.7.6 Release Notes
---------------------------------
-Welcome to the release notes for LINQ to DB 1.0.7.5
+Welcome to the release notes for LINQ to DB 1.7.6
+What's new in 1.7.6
+---------------------
+
+Multi-threading issues fixes
+Inner Joins optimizations (Configuration.Linq.OptimizeJoins)
+Fixed issues with paths on Linux
+F# options support
What's new in 1.0.7.5
---------------------
diff --git a/packages/linq2db.1.7.6/lib/net40/linq2db.dll b/packages/linq2db.1.7.6/lib/net40/linq2db.dll
new file mode 100644
index 0000000..2ff8d82
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/net40/linq2db.dll differ
diff --git a/packages/linq2db.1.7.6/lib/net40/linq2db.pdb b/packages/linq2db.1.7.6/lib/net40/linq2db.pdb
new file mode 100644
index 0000000..0e18b63
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/net40/linq2db.pdb differ
diff --git a/packages/linq2db.1.7.6/lib/net45/linq2db.dll b/packages/linq2db.1.7.6/lib/net45/linq2db.dll
new file mode 100644
index 0000000..23bb405
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/net45/linq2db.dll differ
diff --git a/packages/linq2db.1.7.6/lib/net45/linq2db.pdb b/packages/linq2db.1.7.6/lib/net45/linq2db.pdb
new file mode 100644
index 0000000..c957008
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/net45/linq2db.pdb differ
diff --git a/packages/linq2db.1.7.6/lib/netcore45/linq2db.WindowsStore.dll b/packages/linq2db.1.7.6/lib/netcore45/linq2db.WindowsStore.dll
new file mode 100644
index 0000000..14d37a0
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/netcore45/linq2db.WindowsStore.dll differ
diff --git a/packages/linq2db.1.7.6/lib/netcore45/linq2db.WindowsStore.pdb b/packages/linq2db.1.7.6/lib/netcore45/linq2db.WindowsStore.pdb
new file mode 100644
index 0000000..b5f6b8c
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/netcore45/linq2db.WindowsStore.pdb differ
diff --git a/packages/linq2db.1.7.6/lib/sl4/linq2db.Silverlight.dll b/packages/linq2db.1.7.6/lib/sl4/linq2db.Silverlight.dll
new file mode 100644
index 0000000..c043375
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/sl4/linq2db.Silverlight.dll differ
diff --git a/packages/linq2db.1.7.6/lib/sl4/linq2db.Silverlight.pdb b/packages/linq2db.1.7.6/lib/sl4/linq2db.Silverlight.pdb
new file mode 100644
index 0000000..fb12666
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/sl4/linq2db.Silverlight.pdb differ
diff --git a/packages/linq2db.1.7.6/lib/sl5/linq2db.Silverlight.dll b/packages/linq2db.1.7.6/lib/sl5/linq2db.Silverlight.dll
new file mode 100644
index 0000000..a87555a
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/sl5/linq2db.Silverlight.dll differ
diff --git a/packages/linq2db.1.7.6/lib/sl5/linq2db.Silverlight.pdb b/packages/linq2db.1.7.6/lib/sl5/linq2db.Silverlight.pdb
new file mode 100644
index 0000000..3a9e68f
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/sl5/linq2db.Silverlight.pdb differ
diff --git a/packages/linq2db.1.7.6/lib/windows8/linq2db.WindowsStore.dll b/packages/linq2db.1.7.6/lib/windows8/linq2db.WindowsStore.dll
new file mode 100644
index 0000000..14d37a0
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/windows8/linq2db.WindowsStore.dll differ
diff --git a/packages/linq2db.1.7.6/lib/windows8/linq2db.WindowsStore.pdb b/packages/linq2db.1.7.6/lib/windows8/linq2db.WindowsStore.pdb
new file mode 100644
index 0000000..b5f6b8c
Binary files /dev/null and b/packages/linq2db.1.7.6/lib/windows8/linq2db.WindowsStore.pdb differ
diff --git a/packages/linq2db.1.7.6/linq2db.1.7.6.nupkg b/packages/linq2db.1.7.6/linq2db.1.7.6.nupkg
new file mode 100644
index 0000000..405d752
Binary files /dev/null and b/packages/linq2db.1.7.6/linq2db.1.7.6.nupkg differ