System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact c45e038a20bde1baab3f5eec32ceb79ab0c17b3b:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 20 2a 20 41 44 4f  *********. * ADO
0040: 2e 4e 45 54 20 32 2e 30 20 44 61 74 61 20 50 72  .NET 2.0 Data Pr
0050: 6f 76 69 64 65 72 20 66 6f 72 20 53 51 4c 69 74  ovider for SQLit
0060: 65 20 56 65 72 73 69 6f 6e 20 33 2e 58 0a 20 2a  e Version 3.X. *
0070: 20 57 72 69 74 74 65 6e 20 62 79 20 52 6f 62 65   Written by Robe
0080: 72 74 20 53 69 6d 70 73 6f 6e 20 28 72 6f 62 65  rt Simpson (robe
0090: 72 74 40 62 6c 61 63 6b 63 61 73 74 6c 65 73 6f  rt@blackcastleso
00a0: 66 74 2e 63 6f 6d 29 0a 20 2a 0a 20 2a 20 52 65  ft.com). *. * Re
00b0: 6c 65 61 73 65 64 20 74 6f 20 74 68 65 20 70 75  leased to the pu
00c0: 62 6c 69 63 20 64 6f 6d 61 69 6e 2c 20 75 73 65  blic domain, use
00d0: 20 61 74 20 79 6f 75 72 20 6f 77 6e 20 72 69 73   at your own ris
00e0: 6b 21 0a 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  k!. ************
00f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0100: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0110: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0a 0a 6e  ************/..n
0120: 61 6d 65 73 70 61 63 65 20 53 51 4c 69 74 65 2e  amespace SQLite.
0130: 44 65 73 69 67 6e 65 72 0a 7b 0a 20 20 75 73 69  Designer.{.  usi
0140: 6e 67 20 53 79 73 74 65 6d 3b 0a 20 20 75 73 69  ng System;.  usi
0150: 6e 67 20 53 79 73 74 65 6d 2e 43 6f 6c 6c 65 63  ng System.Collec
0160: 74 69 6f 6e 73 2e 47 65 6e 65 72 69 63 3b 0a 20  tions.Generic;. 
0170: 20 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 54 65   using System.Te
0180: 78 74 3b 0a 20 20 75 73 69 6e 67 20 53 79 73 74  xt;.  using Syst
0190: 65 6d 2e 47 6c 6f 62 61 6c 69 7a 61 74 69 6f 6e  em.Globalization
01a0: 3b 0a 20 20 75 73 69 6e 67 20 4d 69 63 72 6f 73  ;.  using Micros
01b0: 6f 66 74 2e 56 69 73 75 61 6c 53 74 75 64 69 6f  oft.VisualStudio
01c0: 2e 44 61 74 61 3b 0a 20 20 75 73 69 6e 67 20 4d  .Data;.  using M
01d0: 69 63 72 6f 73 6f 66 74 2e 56 69 73 75 61 6c 53  icrosoft.VisualS
01e0: 74 75 64 69 6f 2e 4f 4c 45 2e 49 6e 74 65 72 6f  tudio.OLE.Intero
01f0: 70 3b 0a 20 20 75 73 69 6e 67 20 4d 69 63 72 6f  p;.  using Micro
0200: 73 6f 66 74 2e 56 69 73 75 61 6c 53 74 75 64 69  soft.VisualStudi
0210: 6f 2e 44 61 74 61 2e 41 64 6f 44 6f 74 4e 65 74  o.Data.AdoDotNet
0220: 3b 0a 0a 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72  ;..  /// <summar
0230: 79 3e 0a 20 20 2f 2f 2f 20 44 6f 65 73 6e 27 74  y>.  /// Doesn't
0240: 20 64 6f 20 6d 75 63 68 20 6f 74 68 65 72 20 74   do much other t
0250: 68 61 6e 20 70 72 6f 76 69 64 65 20 74 68 65 20  han provide the 
0260: 44 61 74 61 4f 62 6a 65 63 74 53 75 70 70 6f 72  DataObjectSuppor
0270: 74 20 62 61 73 65 20 6f 62 6a 65 63 74 20 77 69  t base object wi
0280: 74 68 20 61 20 6c 6f 63 61 74 69 6f 6e 0a 20 20  th a location.  
0290: 2f 2f 2f 20 77 68 65 72 65 20 74 68 65 20 58 4d  /// where the XM
02a0: 4c 20 72 65 73 6f 75 72 63 65 20 63 61 6e 20 62  L resource can b
02b0: 65 20 66 6f 75 6e 64 2e 0a 20 20 2f 2f 2f 20 3c  e found..  /// <
02c0: 2f 73 75 6d 6d 61 72 79 3e 0a 20 20 69 6e 74 65  /summary>.  inte
02d0: 72 6e 61 6c 20 73 65 61 6c 65 64 20 63 6c 61 73  rnal sealed clas
02e0: 73 20 53 51 4c 69 74 65 44 61 74 61 4f 62 6a 65  s SQLiteDataObje
02f0: 63 74 53 75 70 70 6f 72 74 20 3a 20 44 61 74 61  ctSupport : Data
0300: 4f 62 6a 65 63 74 53 75 70 70 6f 72 74 0a 20 20  ObjectSupport.  
0310: 7b 0a 20 20 20 20 70 75 62 6c 69 63 20 53 51 4c  {.    public SQL
0320: 69 74 65 44 61 74 61 4f 62 6a 65 63 74 53 75 70  iteDataObjectSup
0330: 70 6f 72 74 28 29 0a 20 20 20 20 20 20 3a 20 62  port().      : b
0340: 61 73 65 28 53 74 72 69 6e 67 2e 46 6f 72 6d 61  ase(String.Forma
0350: 74 28 43 75 6c 74 75 72 65 49 6e 66 6f 2e 49 6e  t(CultureInfo.In
0360: 76 61 72 69 61 6e 74 43 75 6c 74 75 72 65 2c 0a  variantCulture,.
0370: 20 20 20 20 20 20 20 20 20 20 22 53 51 4c 69 74            "SQLit
0380: 65 2e 44 65 73 69 67 6e 65 72 2e 53 51 4c 69 74  e.Designer.SQLit
0390: 65 44 61 74 61 4f 62 6a 65 63 74 53 75 70 70 6f  eDataObjectSuppo
03a0: 72 74 7b 30 7d 22 2c 20 47 65 74 56 53 56 65 72  rt{0}", GetVSVer
03b0: 73 69 6f 6e 28 29 29 2c 0a 20 20 20 20 20 20 20  sion()),.       
03c0: 20 20 20 74 79 70 65 6f 66 28 53 51 4c 69 74 65     typeof(SQLite
03d0: 44 61 74 61 4f 62 6a 65 63 74 53 75 70 70 6f 72  DataObjectSuppor
03e0: 74 29 2e 41 73 73 65 6d 62 6c 79 29 0a 20 20 20  t).Assembly).   
03f0: 20 7b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 72   {.    }..    pr
0400: 69 76 61 74 65 20 73 74 61 74 69 63 20 73 74 72  ivate static str
0410: 69 6e 67 20 47 65 74 56 53 56 65 72 73 69 6f 6e  ing GetVSVersion
0420: 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 73  ().    {.      s
0430: 77 69 74 63 68 20 28 53 79 73 74 65 6d 2e 44 69  witch (System.Di
0440: 61 67 6e 6f 73 74 69 63 73 2e 46 69 6c 65 56 65  agnostics.FileVe
0450: 72 73 69 6f 6e 49 6e 66 6f 2e 47 65 74 56 65 72  rsionInfo.GetVer
0460: 73 69 6f 6e 49 6e 66 6f 28 0a 20 20 20 20 20 20  sionInfo(.      
0470: 20 20 20 20 45 6e 76 69 72 6f 6e 6d 65 6e 74 2e      Environment.
0480: 47 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 41 72  GetCommandLineAr
0490: 67 73 28 29 5b 30 5d 29 2e 46 69 6c 65 4d 61 6a  gs()[0]).FileMaj
04a0: 6f 72 50 61 72 74 29 0a 20 20 20 20 20 20 7b 0a  orPart).      {.
04b0: 20 20 20 20 20 20 20 20 63 61 73 65 20 38 3a 0a          case 8:.
04c0: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e            return
04d0: 20 22 32 30 30 35 22 3b 0a 20 20 20 20 20 20 20   "2005";.       
04e0: 20 63 61 73 65 20 39 3a 0a 20 20 20 20 20 20 20   case 9:.       
04f0: 20 20 20 72 65 74 75 72 6e 20 22 32 30 30 38 22     return "2008"
0500: 3b 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 31  ;.        case 1
0510: 30 3a 0a 20 20 20 20 20 20 20 20 20 20 72 65 74  0:.          ret
0520: 75 72 6e 20 22 32 30 31 30 22 3b 0a 20 20 20 20  urn "2010";.    
0530: 20 20 20 20 63 61 73 65 20 31 31 3a 0a 20 20 20      case 11:.   
0540: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 22 32         return "2
0550: 30 31 32 22 3b 0a 20 20 20 20 20 20 20 20 63 61  012";.        ca
0560: 73 65 20 31 32 3a 0a 20 20 20 20 20 20 20 20 20  se 12:.         
0570: 20 72 65 74 75 72 6e 20 22 32 30 31 33 22 3b 0a   return "2013";.
0580: 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 3a          default:
0590: 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72  .          retur
05a0: 6e 20 6e 75 6c 6c 3b 0a 20 20 20 20 20 20 7d 0a  n null;.      }.
05b0: 20 20 20 20 7d 0a 20 20 7d 0a 7d 0a                  }.  }.}.