System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 34e992031f1afe6ced59ab5f28fee036c3175b6c:


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 0d 0a 20 2a 20 41 44  *********.. * AD
0040: 4f 2e 4e 45 54 20 32 2e 30 20 44 61 74 61 20 50  O.NET 2.0 Data P
0050: 72 6f 76 69 64 65 72 20 66 6f 72 20 53 51 4c 69  rovider for SQLi
0060: 74 65 20 56 65 72 73 69 6f 6e 20 33 2e 58 0d 0a  te Version 3.X..
0070: 20 2a 20 57 72 69 74 74 65 6e 20 62 79 20 52 6f   * Written by Ro
0080: 62 65 72 74 20 53 69 6d 70 73 6f 6e 20 28 72 6f  bert Simpson (ro
0090: 62 65 72 74 40 62 6c 61 63 6b 63 61 73 74 6c 65  bert@blackcastle
00a0: 73 6f 66 74 2e 63 6f 6d 29 0d 0a 20 2a 20 0d 0a  soft.com).. * ..
00b0: 20 2a 20 52 65 6c 65 61 73 65 64 20 74 6f 20 74   * Released to t
00c0: 68 65 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e  he public domain
00d0: 2c 20 75 73 65 20 61 74 20 79 6f 75 72 20 6f 77  , use at your ow
00e0: 6e 20 72 69 73 6b 21 0d 0a 20 2a 2a 2a 2a 2a 2a  n risk!.. ******
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 2a 2a 2a 2a  ****************
0120: 2a 2a 2f 0d 0a 0d 0a 6e 61 6d 65 73 70 61 63 65  **/....namespace
0130: 20 53 51 4c 69 74 65 2e 44 65 73 69 67 6e 65 72   SQLite.Designer
0140: 0d 0a 7b 0d 0a 20 20 75 73 69 6e 67 20 53 79 73  ..{..  using Sys
0150: 74 65 6d 3b 0d 0a 20 20 75 73 69 6e 67 20 53 79  tem;..  using Sy
0160: 73 74 65 6d 2e 43 6f 6c 6c 65 63 74 69 6f 6e 73  stem.Collections
0170: 2e 47 65 6e 65 72 69 63 3b 0d 0a 20 20 75 73 69  .Generic;..  usi
0180: 6e 67 20 53 79 73 74 65 6d 2e 54 65 78 74 3b 0d  ng System.Text;.
0190: 0a 20 20 75 73 69 6e 67 20 53 79 73 74 65 6d 2e  .  using System.
01a0: 47 6c 6f 62 61 6c 69 7a 61 74 69 6f 6e 3b 0d 0a  Globalization;..
01b0: 20 20 75 73 69 6e 67 20 4d 69 63 72 6f 73 6f 66    using Microsof
01c0: 74 2e 56 69 73 75 61 6c 53 74 75 64 69 6f 2e 44  t.VisualStudio.D
01d0: 61 74 61 3b 0d 0a 20 20 75 73 69 6e 67 20 4d 69  ata;..  using Mi
01e0: 63 72 6f 73 6f 66 74 2e 56 69 73 75 61 6c 53 74  crosoft.VisualSt
01f0: 75 64 69 6f 2e 4f 4c 45 2e 49 6e 74 65 72 6f 70  udio.OLE.Interop
0200: 3b 0d 0a 20 20 75 73 69 6e 67 20 4d 69 63 72 6f  ;..  using Micro
0210: 73 6f 66 74 2e 56 69 73 75 61 6c 53 74 75 64 69  soft.VisualStudi
0220: 6f 2e 44 61 74 61 2e 41 64 6f 44 6f 74 4e 65 74  o.Data.AdoDotNet
0230: 3b 0d 0a 0d 0a 20 20 2f 2f 2f 20 3c 73 75 6d 6d  ;....  /// <summ
0240: 61 72 79 3e 0d 0a 20 20 2f 2f 2f 20 50 72 6f 76  ary>..  /// Prov
0250: 69 64 65 73 20 44 61 74 61 56 69 65 77 53 75 70  ides DataViewSup
0260: 70 6f 72 74 20 77 69 74 68 20 61 20 6c 6f 63 61  port with a loca
0270: 74 69 6f 6e 20 77 68 65 72 65 20 74 68 65 20 58  tion where the X
0280: 4d 4c 20 66 69 6c 65 20 69 73 20 66 6f 72 20 74  ML file is for t
0290: 68 65 20 53 65 72 76 65 72 20 45 78 70 6c 6f 72  he Server Explor
02a0: 65 72 27 73 20 76 69 65 77 2e 0d 0a 20 20 2f 2f  er's view...  //
02b0: 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20  / </summary>..  
02c0: 69 6e 74 65 72 6e 61 6c 20 73 65 61 6c 65 64 20  internal sealed 
02d0: 63 6c 61 73 73 20 53 51 4c 69 74 65 44 61 74 61  class SQLiteData
02e0: 56 69 65 77 53 75 70 70 6f 72 74 20 3a 20 44 61  ViewSupport : Da
02f0: 74 61 56 69 65 77 53 75 70 70 6f 72 74 0d 0a 20  taViewSupport.. 
0300: 20 7b 0d 0a 20 20 20 20 70 75 62 6c 69 63 20 53   {..    public S
0310: 51 4c 69 74 65 44 61 74 61 56 69 65 77 53 75 70  QLiteDataViewSup
0320: 70 6f 72 74 28 29 0d 0a 20 20 20 20 20 20 3a 20  port()..      : 
0330: 62 61 73 65 28 53 74 72 69 6e 67 2e 46 6f 72 6d  base(String.Form
0340: 61 74 28 43 75 6c 74 75 72 65 49 6e 66 6f 2e 49  at(CultureInfo.I
0350: 6e 76 61 72 69 61 6e 74 43 75 6c 74 75 72 65 2c  nvariantCulture,
0360: 20 22 53 51 4c 69 74 65 2e 44 65 73 69 67 6e 65   "SQLite.Designe
0370: 72 2e 53 51 4c 69 74 65 44 61 74 61 56 69 65 77  r.SQLiteDataView
0380: 53 75 70 70 6f 72 74 7b 30 7d 22 2c 20 47 65 74  Support{0}", Get
0390: 56 53 56 65 72 73 69 6f 6e 28 29 29 2c 20 74 79  VSVersion()), ty
03a0: 70 65 6f 66 28 53 51 4c 69 74 65 44 61 74 61 56  peof(SQLiteDataV
03b0: 69 65 77 53 75 70 70 6f 72 74 29 2e 41 73 73 65  iewSupport).Asse
03c0: 6d 62 6c 79 29 0d 0a 20 20 20 20 7b 0d 0a 20 20  mbly)..    {..  
03d0: 20 20 7d 0d 0a 0d 0a 20 20 20 20 70 72 69 76 61    }....    priva
03e0: 74 65 20 73 74 61 74 69 63 20 73 74 72 69 6e 67  te static string
03f0: 20 47 65 74 56 53 56 65 72 73 69 6f 6e 28 29 0d   GetVSVersion().
0400: 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 73 77  .    {..      sw
0410: 69 74 63 68 20 28 53 79 73 74 65 6d 2e 44 69 61  itch (System.Dia
0420: 67 6e 6f 73 74 69 63 73 2e 46 69 6c 65 56 65 72  gnostics.FileVer
0430: 73 69 6f 6e 49 6e 66 6f 2e 47 65 74 56 65 72 73  sionInfo.GetVers
0440: 69 6f 6e 49 6e 66 6f 28 45 6e 76 69 72 6f 6e 6d  ionInfo(Environm
0450: 65 6e 74 2e 47 65 74 43 6f 6d 6d 61 6e 64 4c 69  ent.GetCommandLi
0460: 6e 65 41 72 67 73 28 29 5b 30 5d 29 2e 46 69 6c  neArgs()[0]).Fil
0470: 65 4d 61 6a 6f 72 50 61 72 74 29 0d 0a 20 20 20  eMajorPart)..   
0480: 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 63 61     {..        ca
0490: 73 65 20 38 3a 0d 0a 20 20 20 20 20 20 20 20 20  se 8:..         
04a0: 20 72 65 74 75 72 6e 20 22 32 30 30 35 22 3b 0d   return "2005";.
04b0: 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 39 3a  .        case 9:
04c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 72 65 74 75  ..          retu
04d0: 72 6e 20 22 32 30 30 38 22 3b 0d 0a 20 20 20 20  rn "2008";..    
04e0: 20 20 20 20 63 61 73 65 20 31 30 3a 0d 0a 20 20      case 10:..  
04f0: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 22          return "
0500: 32 30 31 30 22 3b 0d 0a 20 20 20 20 20 20 20 20  2010";..        
0510: 63 61 73 65 20 31 31 3a 0d 0a 20 20 20 20 20 20  case 11:..      
0520: 20 20 20 20 72 65 74 75 72 6e 20 22 32 30 31 32      return "2012
0530: 22 3b 0d 0a 20 20 20 20 20 20 20 20 64 65 66 61  ";..        defa
0540: 75 6c 74 3a 0d 0a 20 20 20 20 20 20 20 20 20 20  ult:..          
0550: 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0d 0a 20 20  return null;..  
0560: 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 20 20      }..    }..  
0570: 7d 0d 0a 7d 0d 0a                                }..}..