Mercurial > pub > bltoolkit
comparison Source/Data/Linq/DataContextInfo.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:f990fcb411a9 |
---|---|
1 using System; | |
2 | |
3 namespace BLToolkit.Data.Linq | |
4 { | |
5 using Data.Sql.SqlProvider; | |
6 using Mapping; | |
7 | |
8 public class DataContextInfo : IDataContextInfo | |
9 { | |
10 public DataContextInfo(IDataContext dataContext) | |
11 { | |
12 DataContext = dataContext; | |
13 DisposeContext = false; | |
14 } | |
15 | |
16 public DataContextInfo(IDataContext dataContext, bool disposeContext) | |
17 { | |
18 DataContext = dataContext; | |
19 DisposeContext = disposeContext; | |
20 } | |
21 | |
22 public IDataContext DataContext { get; private set; } | |
23 public bool DisposeContext { get; private set; } | |
24 public string ContextID { get { return DataContext.ContextID; } } | |
25 public MappingSchema MappingSchema { get { return DataContext.MappingSchema; } } | |
26 | |
27 public ISqlProvider CreateSqlProvider() | |
28 { | |
29 return DataContext.CreateSqlProvider(); | |
30 } | |
31 | |
32 public IDataContextInfo Clone(bool forNestedQuery) | |
33 { | |
34 return new DataContextInfo(DataContext.Clone(forNestedQuery)); | |
35 } | |
36 | |
37 public static IDataContextInfo Create(IDataContext dataContext) | |
38 { | |
39 #if SILVERLIGHT | |
40 if (dataContext == null) throw new ArgumentNullException("dataContext"); | |
41 return new DataContextInfo(dataContext); | |
42 #else | |
43 return dataContext == null ? (IDataContextInfo)new DefaultDataContextInfo() : new DataContextInfo(dataContext); | |
44 #endif | |
45 } | |
46 } | |
47 } |