-
Notifications
You must be signed in to change notification settings - Fork 1
/
OCP_Sample_01_v3.linq
45 lines (40 loc) · 1.24 KB
/
OCP_Sample_01_v3.linq
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
37
38
39
40
41
42
43
44
45
<Query Kind="Program" />
void Main()
{
DataProvider DataProviderObject = new MySqlDataProvider();
DataProviderObject.OpenConnection();
DataProviderObject.ExcuteCommand();
DataProviderObject.CloseConnection();
DataProviderObject = new OracleDataProvider();
DataProviderObject.OpenConnection();
DataProviderObject.ExcuteCommand();
DataProviderObject.CloseConnection();
DataProviderObject = new MSSqlDataProvider();
DataProviderObject.OpenConnection();
DataProviderObject.ExcuteCommand();
DataProviderObject.CloseConnection();
}
class MSSqlDataProvider:DataProvider
{
public override int OpenConnection(){return 1;}
public override int CloseConnection(){return 1;}
public override int ExcuteCommand(){return 1;}
}
class MySqlDataProvider:DataProvider
{
public override int OpenConnection(){return 1;}
public override int CloseConnection(){return 1;}
public override int ExcuteCommand(){return 1;}
}
class OracleDataProvider:DataProvider
{
public override int OpenConnection(){return 1;}
public override int CloseConnection(){return 1;}
public override int ExcuteCommand(){return 1;}
}
public abstract class DataProvider
{
public abstract int OpenConnection();
public abstract int CloseConnection();
public abstract int ExcuteCommand();
}