/
LinqToDB.Access.ttinclude
36 lines (31 loc) · 1.29 KB
/
LinqToDB.Access.ttinclude
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<#@ include file="LinqToDB.ttinclude" once="true" #>
<#@ import namespace="System.IO" #>
<#+
LinqToDB.Data.DataConnection GetAccessConnection(string connectionString)
{
return LinqToDB.DataProvider.Access.AccessTools.CreateDataConnection(connectionString);
}
LinqToDB.Data.DataConnection GetAccessConnectionForProvider(string connectionString, string providerName)
{
return LinqToDB.DataProvider.Access.AccessTools.CreateDataConnection(connectionString, providerName);
}
LinqToDB.Data.DataConnection GetAccessConnection(string path, string database)
{
return GetAccessConnection(string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Locale Identifier=1033;Jet OLEDB:Engine Type=5;Persist Security Info=True", Path.Combine(path, database)));
}
public void LoadAccessMetadata(string connectionString)
{
using (var dataConnection = GetAccessConnection(connectionString))
LoadMetadata(dataConnection);
}
public void LoadAccessMetadataByProvider(string connectionString, string providerName)
{
using (var dataConnection = GetAccessConnectionForProvider(connectionString, providerName))
LoadMetadata(dataConnection);
}
public void LoadAccessMetadata(string path, string database)
{
using(var dataConnection = GetAccessConnection(path, database))
LoadMetadata(dataConnection);
}
#>